[英]Jupyter Labs: Kernel Dies when Converting Tuple to PandasData Frame
I have the following tuple that I'm trying to create a data frame out of:我有以下元组,我正在尝试从中创建数据框:
testing =
([datetime.datetime(2020, 2, 5, 0, 0),
datetime.datetime(2020, 2, 5, 2, 40),
datetime.datetime(2020, 2, 5, 5, 20),
datetime.datetime(2020, 2, 5, 8, 0),
datetime.datetime(2020, 2, 5, 10, 40),
datetime.datetime(2020, 2, 5, 13, 20),
datetime.datetime(2020, 2, 5, 16, 0),
datetime.datetime(2020, 2, 5, 18, 40),
datetime.datetime(2020, 2, 5, 21, 20),
datetime.datetime(2020, 2, 6, 0, 0)],
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
I use this snippet to create a data frame:我使用这个片段来创建一个数据框:
df_testing = pd.DataFrame(testing)
df_testing.head()
However, this causes the kernel to die every time.但是,这会导致内核每次都死掉。 If i only loop at 1 item (eg I do df_testing = pd.DataFrame(testing[0])), the code runs fine.
如果我只循环 1 个项目(例如,我执行 df_testing = pd.DataFrame(testing[0])),则代码运行良好。
I'm not super familiar with using tuples so is there some type of property that inhibits them from being turned into a data frame?我对使用元组不是很熟悉,所以是否有某种类型的属性阻止它们变成数据框?
NOTE: There is a lot of code that generates that this "testing variable" it's just a portion of the overall data I would like to eventually convert.注意:有很多代码会生成这个“测试变量”,它只是我最终想要转换的整体数据的一部分。 I filled in some dummy data for the example here.
我在这里为示例填写了一些虚拟数据。 I would prefer not to modify the data type of this variable if at all possible.
如果可能,我宁愿不修改此变量的数据类型。
Also I'm running Python 3.7 in case that matters.另外,我正在运行 Python 3.7,以防万一。
EDIT: Here is a screenshot of my trying to run the test code I put in.编辑:这是我尝试运行我输入的测试代码的屏幕截图。
I would use:我会用:
new_df = pd.Series(dict(zip(*test))).to_frame('name_column')
print(new_df)
or或者
new_df = pd.DataFrame({'name_column':dict(zip(*test))})
print(new_df)
Output输出
name_column
2020-02-05 00:00:00 1
2020-02-05 02:40:00 2
2020-02-05 05:20:00 3
2020-02-05 08:00:00 4
2020-02-05 10:40:00 5
2020-02-05 13:20:00 6
2020-02-05 16:00:00 7
2020-02-05 18:40:00 8
2020-02-05 21:20:00 9
2020-02-06 00:00:00 10
You could use DataFrame.reset_index
if you want convert index in column如果要转换列中的索引,可以使用
DataFrame.reset_index
Another option is DataFrame.transpose
另一种选择是
DataFrame.transpose
new_df = pd.DataFrame(test,index=['Date','values']).T
print(new_df)
Date values
0 2020-02-05 00:00:00 1
1 2020-02-05 02:40:00 2
2 2020-02-05 05:20:00 3
3 2020-02-05 08:00:00 4
4 2020-02-05 10:40:00 5
5 2020-02-05 13:20:00 6
6 2020-02-05 16:00:00 7
7 2020-02-05 18:40:00 8
8 2020-02-05 21:20:00 9
9 2020-02-06 00:00:00 10
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.