Swa*_*agZ 2 python dataframe pandas
我正在尝试从嵌套列表创建一个 panda 数据框,其中包含下面的 ndarray :
from numpy import array
a = list([[1,2],[2,3]])
a[0] = array([[1,2]])
a[0][0] = array([1,2])
Run Code Online (Sandbox Code Playgroud)
我想要实现的目标如下:
D0 D1
1 2
2 3
Run Code Online (Sandbox Code Playgroud)
我试过只使用
pd.DataFrame(a)
Run Code Online (Sandbox Code Playgroud)
这创造了
D0
[1,2]
[2,3]
Run Code Online (Sandbox Code Playgroud)
我还尝试在 for 循环内使用 pd.append
for i in range(0, len(a)):
df = df.append(pd.DataFrame(a[i]))
Run Code Online (Sandbox Code Playgroud)
它实现了我想要的,但速度非常慢,并且 df.append 不知何故创建了重复项。
请帮忙。
提前谢谢。
构造函数pd.DataFrame直接接受列表的列表。无需将列表元素重新定义为numpy数组。
a = [[1,2],[2,3]]
df = pd.DataFrame(a, columns=['D0', 'D1'])
print(df)
# D0 D1
# 0 1 2
# 1 2 3
Run Code Online (Sandbox Code Playgroud)