【发布时间】:2019-03-05 05:10:06
【问题描述】:
我在熊猫数据框的单元格值中有一堆列表和字符串之类的文本。我正在尝试将列表转换为字符串,我能够将列表转换为字符串,但它也拆分了字符串。如果单元格在特定列中包含列表 [],如何仅应用此逻辑?
raw_data = {'Name': [['\'John Smith\''], ['\'Jane Doe\'']],
'id': [['\'A1005\'','\'A1006\''], 'A200,A400,A500']}
dfRaw = pd.DataFrame(raw_data, columns = ['Name','id'])
dfRaw['Name'] = dfRaw['Name'].astype(str)
数据
Name id
0 ["'John Smith'"] ['A1005', 'A1006']
1 ["'Jane Doe'"] A200,A400,A500
需要这样的输出:
Name id
0 ["'John Smith'"] 'A1005','A1006'
1 ["'Jane Doe'"] A200,A400,A500
但下面的代码也在拆分字符串单元格值。
dfRaw['id'] = dfRaw['id'].apply(lambda x: ','.join([str(i) for i in x]))
Name id
0 ["'John Smith'"] 'A1005','A1006'
1 ["'Jane Doe'"] A,2,0,0,,,A,4,0,0,,,A,5,0,0
【问题讨论】: