Python 如何删除'\n';从列表中的项目

Python 如何删除'\n';从列表中的项目,python,data-mining,data-cleaning,tf-idf,topic-modeling,Python,Data Mining,Data Cleaning,Tf Idf,Topic Modeling,我将从列表项中删除“\n”(新行)。以下命令以DataFrame格式从excel文件读取数据,然后将其转换为列表“bodylist”: data = pd.read_excel (r'C:\Users\thmag\HealthUnlockSelenium\PopularPosts\out2.xlsx') df = pd.DataFrame(data, columns= ['body']) #print (df) #convert df to list bodylist = df.values.

我将从列表项中删除“\n”(新行)。以下命令以DataFrame格式从excel文件读取数据,然后将其转换为列表“bodylist”:

data = pd.read_excel (r'C:\Users\thmag\HealthUnlockSelenium\PopularPosts\out2.xlsx')
df = pd.DataFrame(data, columns= ['body'])
#print (df)

#convert df to list
bodylist = df.values.tolist()
bodylist= map(lambda s: s.strip(),bodylist)
for item in bodylist:
    
    print (item)
但我有以下错误:

 bodylist= map(lambda s: s.strip(),bodylist)

AttributeError: 'list' object has no attribute 'strip'
你可以试试这个

bodylist = df.values.tolist()
bodylist = [elt.replace("\n", "") for elt in bodylist]
如果您有一个列表,您可以理解地浏览它,并创建一个不带«\n»字符的新列表

df['body'] = df['body'].apply(lambda line: line.replace('\n', ''))
此代码将在数据帧本身内执行操作,
apply
执行函数或lambda操作,并将在数据帧中的每一行上执行该操作


如果之后需要列表表示,则可以将其转换为列表。

尝试之前是否检查了
bodylist
的外观?列表中的项目本身就是列表。所以,考虑一下如何处理,然后将其应用于整个数据。每个记录都是列表而不是字符串,如果打印bodylist,结果会像[['record1'],['record2']…]看起来很奇怪,read_excel将其保留在最后,你是如何看到它们的?当我打印bodylist时,我会看到“\n”请告诉我如何将bodylist更改为这种格式['data','data',data',…]@Qaiser也许你可以添加一个快速的解释,说明你的代码是做什么的,以及列表理解是如何工作的,以便OP更好地理解你的答案。我有一个相同的错误,“list”对象没有属性“replace”。我有一个excel文件,包括923条文本数据记录。我将为下一步清理数据,即主题建模的excel文件。我以DataFrame格式读取excel文件,然后将其转换为列表。现在我要删除“\n”,因为excel文件中的每一行在python中都转换为“\n”。现在,我需要帮助以了解删除“\n”的最佳方法。非常感谢您的建议有点变化。非常感谢,我按照您的建议做了,但输出中仍然有“\n”。@TaherehMaghsoudi:对不起,我认为strip(“\n”)可以满足您的需要,默认情况下strip在spacereplace(“\n”,”)上工作我想你只是想删除句子开头或结尾的几行