在python中混淆了以下语句

时间:2017-02-25 09:43:46

标签: python pandas dataframe

import pandas as pd

当我运行以下陈述时......

首先不起作用:

In [1]: pd.DataFrame([[1,4],(0,1)])
...
TypeError: Expected list, got tuple

而第二个正在工作:

In [2]: pd.DataFrame([(1,0),[3,8]])
Out[2]:
   0  1
0  1  0
1  3  8

我正在尝试从主列表中的元组/列表中创建一个数据帧。

1 个答案:

答案 0 :(得分:1)

这是一个有趣的发现!

小心第一个行 - 如果它是tuple,则可能有混合行(liststuples),如果它是{ {1}} - 仅接受列表。

演示:

list

解决方案 - 将第一个行转换为In [134]: lst = [[0,1],[2,3],(4,5)] In [135]: pd.DataFrame(lst) ... TypeError: Expected list, got tuple

tuple

当第一行是In [136]: lst[0] = tuple(lst[0]) In [137]: pd.DataFrame(lst) Out[137]: 0 1 0 0 1 1 2 3 2 4 5

tuple