答案 0 :(得分:1)
您可以使用str.replace
和字符类[(),]
来去除括号和逗号。然后,当您想将此文本列用作数字数据时,请稍后使用to_numeric()
:
df['pop'] = df['pop'].str.replace('[(),]+', '', regex=True)
答案 1 :(得分:0)
我也建议您:它为每个元素创建一个新列:
df['pop1'] = pd.to_numeric(df['pop'].str.split(r'\D').str.get(1))
df['pop2'] = pd.to_numeric(df['pop'].str.split(r'\D').str.get(2))
df['pop3'] = pd.to_numeric(df['pop'].str.split(r'\D').str.get(3))
它建议您在“ pop”中始终具有相同的nbr元素。 使用相同的技术,您还可以在pop列中创建一个整数列表。取决于您要如何工作。 例如:
pop4 = []
for i in df['pop']:
newstr = ''.join((ch if ch in '0123456789.-e'else ' ') for ch in i)
listOfNumbers = [float(x) for x in newstr.split()]
pop4.append(listOfNumbers)
df['pop4']=pop4
OFC,您可以诠释或浮动...