Python:如何对数据帧的列进行乘法选择(不使用for循环)
我正在使用pandas数据帧,并希望将特定列的选择相乘。我想选择小于5的Python:如何对数据帧的列进行乘法选择(不使用for循环),python,pandas,dataframe,multiplication,Python,Pandas,Dataframe,Multiplication,我正在使用pandas数据帧,并希望将特定列的选择相乘。我想选择小于5的col2的所有值,并将它们乘以10。我如何做到这一点(不使用 用于循环) 我尝试了以下代码,但这并没有产生我想要的数据帧: df['col2'] = df.col2[df['col2']<5]*10 col1 col2 0 2 10.0 1 3 20.0 2 5 NaN 3 7 40.0 有人知道怎么做吗?我用Lambda expression做到
col2
的所有值,并将它们乘以10。我如何做到这一点(不使用
用于循环)
我尝试了以下代码,但这并没有产生我想要的数据帧:
df['col2'] = df.col2[df['col2']<5]*10
col1 col2
0 2 10.0
1 3 20.0
2 5 NaN
3 7 40.0
有人知道怎么做吗?我用Lambda expression做到了这一点:
df["col2"] = df["col2"].apply(lambda x:x*10 if x < 5 else x)
df[“col2”]=df[“col2”]。应用(λx:x*10,如果x<5,则为x)
我假设大于10的数字保持不变如果值不小于5会发生什么?使用np.where
-np.where(df['col2'].le(5),df['col2']*10,df['col2'])
count=0
for value in df.col2:
if value < 5:
df.col2[count]=df.col2[count]*10
count+=1
df["col2"] = df["col2"].apply(lambda x:x*10 if x < 5 else x)