python - 根据单元格内容组合来自不同行的数据,并使用 pandas 和 python 根据单元格值创建新列
问题描述
我在 csv 文件中有数据,其中每一行都有一个名称、一个水果和与水果相关的数量。我想要的是将来自不同行的数据组合到一行中,其中与某个名称相关的水果的所有数量都在一行之下。
我很难找到从水果列中读取所有数据并将这些水果值转换为单独行的正确方法。
此外,必须将空值转换为零(但这可能很容易做到)。
我正在使用 python 和 pandas 数据框,但我对编码和 pandas 还很陌生,所以我对此并不熟悉。
所以这是我拥有的数据的一个例子。
name, fruit, amount
Mike, Banana, 2
Mike, Kiwi, 3
Anna, Apple, 10
Anna, Banana, 20
Anna, Pineapple, 40
Bert, Pineapple, 100
这是我想要的格式:
name, Banana, Kiwi, Apple, Pineapple
Mike, 2, 3, 0, 0
Anna, 20, 0, 10, 40
Bert, 0, 0, 0, 100
解决方案
当您想要重塑数据框时,请尝试使用数据透视表。
df.pivot(index='name', columns='fruit', values='amount')
推荐阅读
- react-native - React Native - 开发服务器返回响应错误代码 500(新手)
- c++ - 3参数最小比较问题c ++
- pandas - 使用 Pandas 我试图将“日期”列保留为索引列,但该列被重复,有人可以帮助修复它吗?
- spring-boot - 是否可以使用 spring-cloud-config 服务器的端点下载文件夹/目录?
- javascript - 如何使用基于标准的传统 forloop 在数组之间插入项目?
- python - Python Django,无法导入 Django?
- python-3.x - 查找列表项是否在文件名中
- java - 有没有办法将 CompletableFuture 放入循环中?
- python - 如何使用gsutil删除gcs中的多个文件,除了1
- javascript - 如何正确解构这个 JavaScript