试图删除方括号和撇号的数据框列表当我输出到excel
问题描述:
我成功,输出我的数据框到excel,但有额外的不需要的括号和撇号我想删除。试图删除方括号和撇号的数据框列表当我输出到excel
data1 = [x.split(',') for x in self.ismyFirstrange1]
data2 = [y.split(',') for y in self.isFirst1]
dataf1 = pd.DataFrame({'range 2456500 - 2556499': data1})
dataf2 = pd.DataFrame({'range 2456500 - 2556499': data2})
frames = [dataf1, dataf2]
result = pd.concat(frames, keys=['firstRange', 'secondRange'], axis=1, join='inner')
pprint(result)
df = pd.DataFrame(result)
writer = pd.ExcelWriter('outputbarcode.xlsx')
df.to_excel(writer, 'Sheet1')
writer.save()
输出到Excel看起来是这样的:
A
1 ['2506588']
2 ['2540181']
3 ['2553486']
4 ['2540181']
5 ['2540389']
6 ['2553384']
我希望它
A
1 2506588
2 2540181
3 2553486
4 2540181
5 2540389
6 2553384
我才发现,我需要为str,地方代替它,但不知道是怎么回事完成。 请帮助
答
尝试预处理的第一列:
df.iloc[:, 0] = df.iloc[:, 0].str[0].astype(int)
答
如果值列表:
df['column name'] = df['column name'].str[0].astype(int)
如果字符串:
df['column name'] = df['column name'].str.strip('[]').astype(int)
您可以通过检查:
你还可以省略:
df = pd.DataFrame(result)
因为result
是DataFrame
了。
所以:
result = pd.concat(frames, keys=['firstRange', 'secondRange'], axis=1, join='inner')
#if need reset index to default
result = result.reset_index(drop=True)
pprint(result)
writer = pd.ExcelWriter('outputbarcode.xlsx')
result.to_excel(writer, 'Sheet1')
我转换他们的字符串,我想到了被海峡。 – johnobc
@JohnOlegario不要将数据过早转换为字符串 - 如果需要,您将丢失可能需要转换数据的信息。 –
它们被转换,所以我可以拆分它们中的数据。这是必要的,我成功的我需要实现的,只是当我输出到excel方括号出现 – johnobc