2024-09-29 01:32:48 发布
网友
我有一个数据框
name age hb ali 34 14 jex 16 13 aja 24 16 joy 23 12
我想把“年龄”列减去15,“hb”列减去10。在
不应修改原始数据帧
使用^{}或^{}:
mask = (df.age-15 < 10) & (df.hb-10 < 5) s = df.loc[mask, 'name']
或者:
或者更好,谢谢,皮尔:
s = df.query('age < 25 and hb < 15')['name'] s = df.loc[(df.age < 25) & (df.hb < 15), 'name']
如果需要所有列:
df1 = df.query('age < 25 and hb < 15') df2 = df[(df.age < 25) & (df.hb < 15)]
如果要对不同的列使用不同的值进行操作,然后与其他不同的值进行比较,同样,对于不同的列,可以使用与列名对齐的适当索引值创建序列。我必须将原始数据帧子集为关注的列。在
to_sub = pd.Series(dict(age=15, hb=10)) to_cmp = pd.Series(dict(age=10, hb=5)) df[df[['age', 'hb']].sub(to_sub).lt(to_cmp).all(1)] name age hb 1 jex 16 13 3 joy 23 12
使用^{} 或^{} :
或者:
^{pr2}$或者更好,谢谢,皮尔:
如果需要所有列:
如果要对不同的列使用不同的值进行操作,然后与其他不同的值进行比较,同样,对于不同的列,可以使用与列名对齐的适当索引值创建序列。我必须将原始数据帧子集为关注的列。在
相关问题 更多 >
编程相关推荐