python - 如何在 Pandas 中将带有数字列表的列转换为 np.array 格式
问题描述
如何在熊猫数据框中将列的所有行转换为 numpy 数组格式?示例数据框:
df=pd.DataFrame({
"actual":["1,0,0,1","0,0,1,0"],
"predicted":["[1,0,0,0]","[0,1,1,1]"]
})
理想数据框:
我尝试actual
使用下面的代码将列转换为数组格式,但失败了。
df['actual']=df.actual(lambda x: np.array([int(s) for s in x.to_numpy().split(',')]))
解决方案
错误的出现是因为df.actual(
您调用了列本身,例如df['actual'](
,您可以使用Series.apply
并且to_numpy
不存在于str
df['actual'] = df.actual.apply(lambda x: np.array([int(s) for s in x.split(',')]))
actual predicted
0 [1, 0, 0, 1] [1,0,0,0]
1 [0, 0, 1, 0] [0,1,1,1]
推荐阅读
- php - 测试条带 - 为结帐会话创建费用
- angular - Angular 8隐藏div并在按钮单击时显示div
- javascript - ngFor 和 trackBy 与来自 API 的异步数据仍然重新渲染 DOM?
- python - 将数据作为元组移交以在 abaqus python 代码中运行
- batch-file - 文件路径中有空白空间的批处理地狱
- python - 显示 Python 图像
- c - 返回由随机字母组成的字符串的指针的函数
- python - 当信标在扫描仪上显示/不显示时,如何修改此 python 脚本以执行 php 文件?
- xpath - 过滤器介体中的 XPath 表达式
- bash - 可以打印两个 iso8601 时间段之间的所有日期的 Bash 脚本