我很成功,将我的数据框输出到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,在某处替换它,但不确定它是如何完成的。 请帮忙
答案 0 :(得分:0)
尝试预处理第一列:
df.iloc[:, 0] = df.iloc[:, 0].str[0].astype(int)
答案 1 :(得分:0)
如果值是列表:
df['column name'] = df['column name'].str[0].astype(int)
如果是字符串:
df['column name'] = df['column name'].str.strip('[]').astype(int)
您可以通过以下方式查看:
print (type(df['column name'].iloc[0]))
你也可以省略:
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')