【发布时间】:2020-10-14 03:18:45
【问题描述】:
我正在尝试创建一个 pandas DataFrame 来收集我拥有的所有内容,但是我很难将列表中的 numpy 数组组合成一个数组。
假设我有以下数据:
df0 = pd.DataFrame([[1,2],[2,2],[3,1],[4,4],[5,4]], columns = ['A','B'])
collect = []
for i in range(5):
collect.append(df0.mean())
collect.append((i**2+2))
在这里,我显然通过循环相同的数据帧 5 次使其更简单,但在我的实际数据中,每次迭代都经过数据帧中的不同列。无论如何,我想要一个最终结果:
A B i
3.0 2.6 2
3.0 2.6 3
3.0 2.6 6
3.0 2.6 11
3.0 2.6 18
但我无法创建 5x3 矩阵,因为 len(collect) 是 10。我认为我在 for 循环中没有以正确的方式使用 .append。如何创建一个数组,使len(collect) 为 5 或 15?我在想,如果它的长度为 5,我们可以简单地转置 collect 或者它的长度为 15,我们可以对其进行整形。
编辑:我稍微更改了第三列,以便人们可以看到它与简单的索引列不同。
【问题讨论】:
标签: python python-3.x pandas numpy numpy-ndarray