为了账号安全,请及时绑定邮箱和手机立即绑定

Pandas 将字符串与 groupby 结合起来

Pandas 将字符串与 groupby 结合起来

千巷猫影 2022-11-01 16:55:36
我正在尝试在我的数据框中组合字符串。数据框如下所示:0          code   text11        507489   text22        507489   text33        506141   text44        506141   text55        504273   text6我当前的代码:import pandas as pddf = pd.read_csv("location.csv", header=None, delimiter=';', dtype='unicode', nrows=100)new_header = df.iloc[0] df = df[1:] df.columns = new_headerdf.groupby('code').agg('->'.join).reset_index()df.to_csv (r'new_location\export_dataframe.csv', index = False, header=True)print(df)但我没有得到预期的结果。当我期待时,输出看起来与输入相同:0          code   text11        507489   text2->text32        506141   text4->text53        504273   text6对此很陌生,所以我一定犯了一些简单的错误。产生相同结果的数据框:testf = {'code': ['1','2','2','4'],        'text': [22000,25000,27000,35000]        }df = pd.DataFrame(testf, columns = ['code', 'text'])
查看完整描述

1 回答

?
杨__羊羊

TA贡献1943条经验 获得超7个赞

似乎您忘记了分配回来,也被删除header=None了,read_csv因为在文件中是用于 DataFrame 中列名称的标题:


import pandas as pd


df = pd.read_csv("location.csv", sep=';', dtype='unicode', nrows=100)


df = df.groupby('code').agg('->'.join).reset_index()

print (df)

     code         text1

0  504273         text6

1  506141  text4->text5

2  507489  text2->text3


df.to_csv (r'new_location\export_dataframe.csv', index = False)


查看完整回答
反对 回复 2022-11-01
  • 1 回答
  • 0 关注
  • 122 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信