使用python从excel单元格中删除换行符

使用python从excel单元格中删除换行符,python,Python,我正在尝试将excel文件转换为csv文件。excel文件中的数据如下所示: import re data_xls = data_xls.replace('\n', ' ', regex=True) 要转换为csv的我的代码: import pandas as pd import glob for excel_file in glob.glob('C:/Talend/DEV/MARKET_OPTIMISATION/IMS/*Extract*.xls'): print(excel_fi

我正在尝试将excel文件转换为csv文件。excel文件中的数据如下所示:

import re
data_xls = data_xls.replace('\n', ' ', regex=True)

要转换为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文件中的换行符吗


提前感谢。

请分别尝试替换\r和\n

mystring = mystring.replace('\n', ' ').replace('\r', '')

如果失败,则只需.split()字符串,然后.join()列表元素即可

您可以使用以下方法:

import re
re.sub("\n|\r", "", mystring)

在数据框中,换行符位于列名中。当您使用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', ''))

您必须在命令中使用regex=True,如下所示:

import re
data_xls = data_xls.replace('\n', ' ', regex=True)
或者最好用一个空格替换任何类型的空白:

data_xls = data_xls.replace('\s', ' ', regex=True)

您需要更换
\t
(选项卡)。 这将使您的所有记录内联

mystring = mystring.replace('\t','')
mystring = mystring.replace('\t','')

您需要更换
\t
(选项卡)。 这将使您的所有记录内联

mystring = mystring.replace('\t','')
mystring = mystring.replace('\t','')

您可以粘贴部分数据,以查看数据中隐藏了哪些字符。

也尝试单独使用“替换”,但无效。@Ballesta,我在这里面临另一个问题。在将xls文件转换为csv时,我有类似“NA”的数据,它将NA视为空值。你能建议一下如何读取数据吗。