从pandas数据帧单元格中的杂乱字符串中删除换行符?

Cal*_*vin 10 python string split pandas

我已经在我的pandas数据框中使用了多种方法来分割和剥离字符串以删除所有'\n'字符,但由于某种原因,它根本不想删除附加到其他字的字符,即使我分开他们.我有一个pandas数据框,其中一列使用Beautifulsoup从网页中捕获文本.已经由beautifulsoup清理了一些文本,但是删除了附加到其他角色的换行符失败了.我的字符串看起来有点像这样:

"动手开发游戏.我们将研究与游戏无关的各种软件技术,包括编程语言,脚本,语言,操作系统,文件系统,网络,模拟\n引擎和多媒体设计系统.我们将还研究了计算机科学和相关领域的一些基础科学概念,包括"

是否有一种简单的python方法来删除这些"\n"字符?

提前致谢!

jez*_*ael 29

编辑:对此的正确答案是:

df = df.replace(r'\\n',' ', regex=True) 
Run Code Online (Sandbox Code Playgroud)

我想你需要replace:

df = df.replace('\n','', regex=True)
Run Code Online (Sandbox Code Playgroud)

要么:

df = df.replace('\n',' ', regex=True)
Run Code Online (Sandbox Code Playgroud)

要么:

df = df.replace(r'\\n',' ', regex=True)
Run Code Online (Sandbox Code Playgroud)

样品:

text = '''hands-on\ndev nologies\nrelevant scripting\nlang
'''
df = pd.DataFrame({'A':[text]})
print (df)
                                                   A
0  hands-on\ndev nologies\nrelevant scripting\nla...

df = df.replace('\n',' ', regex=True)
print (df)
                                                A
0  hands-on dev nologies relevant scripting lang 
Run Code Online (Sandbox Code Playgroud)

  • 对于后来发现这一点的人:我认为表达式应该是: `df.replace(r'\n', ' ', regex=True)`,即不要使用两个反斜杠。 (2认同)

Eme*_*eus 15

删除回车符 ( \r)、换行符 (\n)和制表符 ( \t)

df = df.replace(r'\r+|\n+|\t+','', regex=True)
Run Code Online (Sandbox Code Playgroud)


Lin*_*ser 10

df.replace(to_replace=[r"\\t|\\n|\\r", "\t|\n|\r"], value=["",""], regex=True, inplace=True)
Run Code Online (Sandbox Code Playgroud)

为我工作。

来源:

https://gist.github.com/smram/d6ded3c9028272360eb65bcab564a18a


小智 8

在凌乱的数据中,删除所有空格可能是个好主意df.replace(r'\s', '', regex = True, inplace = True)


小智 6

   df = 'Sarah Marie Wimberly So so beautiful!!!\nAbram Staten You guys look good man.\nTJ Sloan I miss you guys\n'

   df = df.replace(r'\\n',' ', regex=True)
Run Code Online (Sandbox Code Playgroud)

这适用于我拥有的混乱数据。