将函数应用于pandas datafram中的列

2024-09-30 18:31:15 发布

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

所以我有一个函数replaceMonth(string),它只是一系列if语句,返回从pandas数据帧中的列派生的字符串。然后我需要用派生字符串替换原始字符串。

数据帧的定义如下:

Index    ID        Year  DSFS           DrugCount
0        111111    Y1    3- 4 months    1

数据帧中大约有80K行。我需要做的是用replaceMonth(string)函数的结果替换列DSFS中的内容。

因此,例如,如果DSFS的第一行中的值是“3-4个月”,如果我通过replaceMonth()运行该字符串,它将给我“3-4个月”作为返回值。然后我需要将数据帧中的值从“3-4个月”更改为“3-4个月”。

我一直在尝试在数据帧上使用apply,但我要么是语法错误,要么是不理解它的正确工作,例如:

dataframe['DSFS'].apply(replaceMonth(dataframe['DSFS']))

这听起来不对,但我不确定我在哪里搞砸了。我对Python还不太熟悉,所以可能是语法问题。:)

非常感谢您的帮助!


Tags: 数据函数字符串iddataframepandasstringindex