我有一些地址数据(数据框中的列),如下所示:
address
FowlerWhiteBurnettPA\n1395BrickellAvenue\nFourteenthFloor\nMiami,FL33131
Levine&GlassmanLLC\n1655NCommerceParkway\nWeston,FL33326
SimonTrialFirm\nBiscayneBankTower\n2601SouthBayshoreDriveSuite1010\nMiami,FL33133
我想拆分此列以仅保留公司名称。也就是说,我只想拥有:
firm
FowlerWhiteBurnettPA
Levine&GlassmanLLC
SimonTrialFirm
我使用的代码是:
data['firm'] = data['address'].str.split('\n').str[0]
但是,这只会返回原始地址,而不会进行任何更改。然后我尝试了
data['firm'] = data['address'].str.split('\\').str[0]
它在'\'上分割并给出我想要的。但是,我不知道为什么'\ n'不起作用。.我也尝试对'\ n'进行分裂,这也行不通。
有人知道这是怎么回事吗?
答案 0 :(得分:2)
尝试运行df.address.values
。您的输出可能是:
array(['FowlerWhiteBurnettPA\\n1395BrickellAvenue\\nFourteenthFloor\\nMiam....
请注意字符串中的\\n
。
在这种情况下,您需要在\
上进行两次转义,或者将raw_string r'...'
表示为\
并进行一次转义,如下所示:
df.address.str.split('\\\\n').str[0]
或
df.address.str.split(r'\\n').str[0]
Out[147]:
0 FowlerWhiteBurnettPA
1 Levine&GlassmanLLC
2 SimonTrialFirm
Name: address, dtype: object