2024-09-29 01:30:41 发布
网友
我有一个数据帧,假设:
name age hb ali 34 14 jex 16 13 aja 24 16 joy 23 12
我想从“hb”列的每个成员中减去一个值“5”
新列可以是:
hb 9 8 11 7
做这件事最好的方法是什么
谢谢和问候
如果您正在使用:
df['hb'] - 5
您将获得一个新的单列。但如果您想保留其余部分,则必须使用:
df['hb'] -= 5
您也可以使用pandas.apply函数执行此操作
df.loc[:, "hb"] = df["hb"].apply(lambda x: x - 5)
只需从pandas.Series中减去标量值,对于数值列,panda将自动广播标量值并从列中的每个元素中减去它。示例-
pandas.Series
df['hb'] - 5 #Where `df` is your dataframe.
演示-
In [43]: df Out[43]: name age hb 0 ali 34 14 1 jex 16 13 2 aja 24 16 3 joy 23 12 In [44]: df['hb'] - 5 Out[44]: 0 9 1 8 2 11 3 7 Name: hb, dtype: int64
如果您正在使用:
您将获得一个新的单列。但如果您想保留其余部分,则必须使用:
您也可以使用pandas.apply函数执行此操作
df.loc[:, "hb"] = df["hb"].apply(lambda x: x - 5)
只需从
pandas.Series
中减去标量值,对于数值列,panda将自动广播标量值并从列中的每个元素中减去它。示例-演示-
相关问题 更多 >
编程相关推荐