python - 为什么我无法创建一个列是两个 float 列表的 DataFrame?

标签 python pandas formatting

这里是一个例子:

import pandas as pd
import numpy as np

positions = np.array([[2.2,3.1],
                      [2.3,6.2], 
                      [2.4,9.3]])

df = pd.DataFrame({'pos': positions})

它返回以下错误

ValueError: If using all scalar values, you must pass an index

最佳答案

因为它被解释为两列,所以使用 tolist :

import numpy as np
import pandas as pd

positions = np.array([[2.2, 3.1],
                      [2.3, 6.2],
                      [2.4, 9.3]])

df = pd.DataFrame({'pos': positions.tolist()})

print(df)

输出

          pos
0  [2.2, 3.1]
1  [2.3, 6.2]
2  [2.4, 9.3]

关于python - 为什么我无法创建一个列是两个 float 列表的 DataFrame?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58324622/

相关文章:

mysql - 重写mySQL语句

python-3.x - Python打印具有给定位数的 float

python - 标准化 numpy 数组中的子数组长度以对其进行数学计算

python - 如何在 conda 的根环境中更新 Python 版本

python - 将列转换为 Pandas 数据框中的多行

python - 如何更改python时间序列中的重采样顺序

java - Intellij IDEA "Smart Indent", 方法声明后删除制表符

python - 如何在写入列表时过滤 Pandas 系列

python - 在具有 O(1) 复杂性的列表中查找/检查项目的大多数 Pythonic 方法?

python - 如果列不为 NaN,则 Pandas 求和索引