Python 熊猫按唯一ID将csv拆分为多个csv
我真的迷路了,需要一些帮助或提示 我有一个具有重复id的CSV文件,我想将其拆分为多个CSV,每个CSV文件包含一个唯一id 预期产出应为 file1.csvPython 熊猫按唯一ID将csv拆分为多个csv,python,pandas,Python,Pandas,我真的迷路了,需要一些帮助或提示 我有一个具有重复id的CSV文件,我想将其拆分为多个CSV,每个CSV文件包含一个唯一id 预期产出应为 file1.csv person_name id Total Paid Date No Deniss 55227 1191,75 0,00 21/08/2019 15/06/2018 RINALDS 56002 169,00 0,00 21/08/2019 15/
person_name id Total Paid Date No
Deniss 55227 1191,75 0,00 21/08/2019 15/06/2018
RINALDS 56002 169,00 0,00 21/08/2019 15/06/2018
OLGA 54689 812,90 0,00 21/08/2019 15/05/2018
文件2.csv
person_name id Total Paid Date No
Deniss 55227 1191,75 0,00 21/08/2019 20180615
RINALDS 56002 169,00 0,00 21/08/2019 20180615
OLGA 54689 812,90 0,00 21/08/2019 20180515
你需要:
[df.loc[df['id']==x].to_csv() for x in df['id'].unique()]
您可以使用它来获得所需的结果您介意添加预期的输出吗?我已经说过,纯代码编写请求与堆栈溢出无关-我们希望这里的问题与特定的编程问题相关-但我们很乐意帮助您自己编写!告诉我们,你被困在哪里了。这也将帮助我们更好地回答您的问题。您没有按唯一id拆分数据,而是根据
No
列中的日期格式进行拆分。在任何情况下,df.No=pd.to\u datetime(df.No)
,然后df.drop\u duplicates(inplace=True)
,因为您显示的数据除了No
字符串的格式外,都是相同的。但如果出现了4次ID,这意味着这将无法根据需求选择您的子集。H根据副本更改它。如果您可以通过创建id和日期的子集来选择重复项,那么就使用它。其他部分将保持不变。
file_2 = data[data.duplicated(subset='id')]
file_1 = data[~data['No'].isin(list(typee_1['No']))]