【发布时间】:2020-04-16 18:28:16
【问题描述】:
您好,我是 python 初学者。 我想根据列中的值从一个大 csv 中提取不同的 csv 文件。 我的 csv 看起来像这样:
IDMember Risk Area
1 2 30
2 1 20
3 2 10
我有数千个具有相同 IDMember 的值,我想为每个这个 ID 提取一个 csv,该 ID 在 csv 文件名中。
我该怎么做?
我正在尝试这样的事情,但我认为我错过了一些东西:
import os
import pandas
df = r'MyCSVPath'
outFolder = r'MyOutputFolder'
col = 'MemberID'
for col in df.groupby('MemberID'):
df.to_csv(f'{MemberID}.csv')
【问题讨论】:
-
for i in df['MemberID'].unique(): df[df['MemberID'].eq(i)].to_csv(....) -
@DaemonPainter:我认为这并不能真正解决 OP 的问题。
groupby可能更符合主题... -
这里有不同的问题:1/打开一个csv文件并将一个csv文件读入pandas DataFrame:
open和read_csv2/根据一列中的值拆分一个csv:@ 987654330@ 并在 GroupBy 上迭代 3/ 在文件夹中打开一个新文件:os.path并再次open4/ 将数据帧保存到 csv 文件to_csv。也许您应该尝试一次只关注一个问题...我认为阅读How to Ask 可能很有用:-)