我正在尝试将多个csv合并成一个,它给了我这样的复制品 以下是我尝试合并的csv示例:
在闪烁.csv在
account_id kills deaths assists...(a couple more columns)
1015 4 4 2
1015 3 5 5
大多数csv都是这样的,里面有不同的数据。 这是合并的结果(不是我想要的)
^{pr2}$它将数据保存为4的重复项,但account_id基本上都是重复的,那么如何将csv合并在一起而不具有4个重复行,但不将其视为所有重复项而保留帐户_id? 还有没有办法去掉专栏标题末尾的x和y?
下面是我尝试使用的python代码(但得到了我不想要的结果):
blink = pd.read_csv('blink.csv',keep_default_na=False,na_values=[""])
faithbian = pd.read_csv('faithbian.csv',keep_default_na=False,na_values=[""])
iceice = pd.read_csv('iceice.csv',keep_default_na=False,na_values=[""])
shadow = pd.read_csv('Shadow.csv',keep_default_na=False,na_values=[""])
y = pd.read_csv('y.csv',keep_default_na=False,na_values=[""])
df = pd.concat([blink,faithbian,iceice,shadow,y],axis=0).drop_duplicates()
a_df = pd.concat([df.groupby(['match_id'])['account_id'].apply(lambda x: "%s" % ', '.join(x.astype(str))),
df.groupby(['match_id'])['hero_id'].apply(lambda x: "%s" % ', '.join(x.astype(str))),
df.groupby(['match_id'])['kills','deaths','assists','xp_per_min','gold_per_min','hero_damage','hero_healing','tower_damage'].mean()],axis=1).drop_duplicates()
con_df = pd.merge(a_df, df, left_index=True, right_on='match_id').drop_duplicates()
con_df.to_csv('out.csv')
目前没有回答
相关问题 更多 >
编程相关推荐