Python 更改数据帧一列中的所有值
我有一个包含22列的熊猫数据框,我想修改“Result”列中的所有值 在我的文件中,结果列中的值是形式为“W(+3)”的字符串,我想提取整数,基本上就是这个字符串中的内容Python 更改数据帧一列中的所有值,python,pandas,dataframe,Python,Pandas,Dataframe,我有一个包含22列的熊猫数据框,我想修改“Result”列中的所有值 在我的文件中,结果列中的值是形式为“W(+3)”的字符串,我想提取整数,基本上就是这个字符串中的内容 a[a.find("(")+1:a.find(")")] 我只是使用find函数并为字符串编制索引。但是如何将其应用于“Result”列中的所有值呢。我想我可以用for循环进行迭代,还有其他方法吗?你可以用正则表达式模式使用str.extract Ex: import pandas as pd df = pd.DataFra
a[a.find("(")+1:a.find(")")]
我只是使用find函数并为字符串编制索引。但是如何将其应用于“Result”列中的所有值呢。我想我可以用for循环进行迭代,还有其他方法吗?你可以用正则表达式模式使用
str.extract
Ex:
import pandas as pd
df = pd.DataFrame({"Result": [ 'W (+3)' ]})
print(df["Result"].str.extract(r"\((.*?)\)"))
0 +3
Name: Result, dtype: object
输出:
import pandas as pd
df = pd.DataFrame({"Result": [ 'W (+3)' ]})
print(df["Result"].str.extract(r"\((.*?)\)"))
0 +3
Name: Result, dtype: object
有一个apply函数:a['Results'].apply(lambda x:…),它比在数据帧中循环要快谢谢。基本上只是添加了df['Result']=df[“Result”]。str.extract(r“(.*?)
(r“(.*?))
不会得到括号内的内容。可以吗?很好用,谢谢。我刚刚分配了新专栏。