在pandas datafram上使用split()函数

2024-04-27 05:05:43 发布

您现在位置:Python中文网/ 问答频道 /正文

我有以下数据框:

enter image description here

我在试着去掉百分数标志。为了做到这一点,我决定在民主党和共和党专栏中应用一个函数,并尝试按百分比符号拆分()。以下代码尝试执行此操作:

gallup_2012[['Democrat/Lean Democratic', 'Republican/Lean 
Republican']].apply(lambda x: x.split('%')[0])

但是,当我尝试执行此操作时,会出现以下错误:

("'Series' object has no attribute 'split'", u'occurred at index Democrat/Lean > Democratic')

我不太清楚为什么会发生这个错误,因为我可以将其他函数应用到这个系列中。只是split()函数不起作用。

任何帮助都将不胜感激!


Tags: 数据函数代码标志错误符号split百分比
2条回答

可以对所需的列使用str.replace方法

df["column"] = df["column"].str.replace("%", "")

df[[ ]]返回一个数据帧,因此如果使用df.apply(),那么它将应用于pd.Series。而且Series没有split()方法,但是如果您使用df[ ]并使用df.apply(),那么您将能够实现您想要的。缺点是只能对一列应用。

gallup_2012['Democrat/Lean Democratic'].apply(lambda x: x.split('%')[0])

相关问题 更多 >