我正在尝试在我的数据框中合并字符串。数据框如下所示:
0 code text1
1 507489 text2
2 507489 text3
3 506141 text4
4 506141 text5
5 504273 text6
我当前的代码:
import pandas as pd
df = pd.read_csv("location.csv", header=None, delimiter=';', dtype='unicode', nrows=100)
new_header = df.iloc[0]
df = df[1:]
df.columns = new_header
df.groupby('code').agg('->'.join).reset_index()
df.to_csv (r'new_location\export_dataframe.csv', index = False, header=True)
print(df)
但是我没有得到预期的结果。我期待的输出看起来与输入相同:
0 code text1
1 507489 text2->text3
2 506141 text4->text5
3 504273 text6
这很新, 所以我必须犯一些容易犯的错误。
产生相同结果的数据框:
testf = {'code': ['1', '2', '2', '4'], 'text': [22000, 25000, 27000, 35000]
}
df = pd.DataFrame(testf, columns = ['code', 'text'])
#1
似乎你忘记了分配回来, 在read_csv中也删除了header = None, 因为在文件中, 标题是用于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)
评论前必须登录!
注册