我正在尝试将excel文件转换为csv文件。excel文件中的数据如下:
我要转换为csv的代码:
import pandas as pd
import glob
for excel_file in glob.glob('C:/Talend/DEV/MARKET_OPTIMISATION/IMS/*Extract*.xls'):
print(excel_file)
data_xls = pd.read_excel(excel_file, 'Untitled', index=0,skiprows=1, sep='|',encoding='utf-8')
#data_xlx.pop
data_xls1=data_xls.replace('\r\n','')
data_xls1.to_csv('C:/Talend/DEV/MARKET_OPTIMISATION/IMS/IMS_Raw_data.csv',sep='|',encoding='utf-8')
上述代码的输出为:
但我需要像这样放出去
谁能帮我去掉excel文件中的换行符?
提前谢谢你。
发布于 2019-01-28 16:34:28
在数据帧中,换行符位于列名中。当您使用dataframe的replace方法时,列名不受影响,只有数据受影响。
因此,在您的示例中,您应该明确地更改列名:
data_xls = pd.read_excel(excel_file, 'Untitled', index=0,skiprows=1, sep='|',encoding='utf-8')
data_xls.columns = data_xls.columns.map(lambda x: x.replace('\r','').replace('\n', ''))
发布于 2019-01-28 16:07:46
尝试分别替换\r和\n
mystring = mystring.replace('\n', ' ').replace('\r', '')
如果失败,只需使用.split()字符串,然后使用.join()列表元素
发布于 2019-01-28 16:18:10
您可以使用类似以下内容:
import re
re.sub("\n|\r", "", mystring)
https://stackoverflow.com/questions/54405672
复制相似问题