col1 col2 col3 labelrow1 1 0 1 1row2 0 0 0 1row3 1 1 1 0row4 1 2 1 0
我基本上需要它遍历每一行,如果label = 0,则将行中的所有值乘以-1.
我尝试了很多不同的方法,包括:
df.ix[3] = df.ix[3].multiply(-1)
哪个回报:
SettingWithcopyWarning:
A value is trying to be set on a copy of a slice from a DataFrame.
Try using .loc[row_indexer,col_indexer] = value instead
我也尝试删除行和替换,这不起作用,因为索引更改.
解决方法 或者,您可以运行行方式 *** 作:df = df.apply(lambda row: row*-1 if row['label'] == 0 else row,axis=1)print(df) # col1 col2 col3 label# row1 1 0 1 1# row2 0 0 0 1# row3 -1 -1 -1 0# row4 -1 -2 -1 0总结
以上是内存溢出为你收集整理的python – 将Pandas Dataframe行中的所有值相乘全部内容,希望文章能够帮你解决python – 将Pandas Dataframe行中的所有值相乘所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)