【发布时间】:2021-04-30 14:13:12
【问题描述】:
我正在尝试将函数应用于熊猫数据框,我想要应用的函数是创建一个以“abc”为值的新列。但输出不是我所期望的。这是输入和输出的代码:
import pandas as pd
df = pd.read_csv("test.csv")
print(df)
# Initial Dataframe
# name age
# 0 alex 25
# 1 audrey 22
def add_one(df):
return df + 1
def create_col(df):
df["new_col"] = 'abc'
df["age_1_year"] = df["age"].apply(add_one)
df["my_col"] = df.apply(create_col)
print(df)
# name age age_1_year my_col
# 0 alex 25 26 NaN
# 1 audrey 22 23 NaN
我希望在我的列“my_col”中有“abc”,但我得到了“NaN”。提前致谢
【问题讨论】:
-
您不需要
apply。直接使用df["my_col"] = 'abc'? -
你是对的,它会起作用,但我正在尝试使用函数,因为最终这个项目会变得更大,我想要对它们进行单元测试的函数
标签: python pandas dataframe etl