我有一个经过筛选的数据集,new_df
,如下所示
Label New_Label Username Look_up
59 1.0 True vald21 val
67 1.0 True 2512 2512
75 1.0 True Christine Chris
创建它是为了在满足某些条件时分配新标签(New_Label
)。我还有另一个数据集(df
),它包含所有数据(该数据集是上面的数据提取的地方),但没有关于New_Label
的信息(因为上面的数据集是基于特定条件过滤而创建的)
Label Username Look_up
59 1.0 vald21 val
67 1.0 2512 2512
67 0.0 faehr6542 faehr
...
75 1.0 Christine Chris
122 0.0 starogm starogm
我想将Label
从我的原始数据集df
更改为new_df
中的那些行,如果大小写标签和新的_标签不匹配
Label Username Look_up
59 0 vald21 val
67 0 2512 2512
67 0 faehr6542 faehr
...
75 0 Christine Chris
122 0 starogm starogm
其中new_df
中的True
对应于0
,而False
对应于Label
列中的1
。我不想更改其他值,只想更改new_df
数据集中的那些值(我的键是Username)
请您解释一下,如何更改原始数据集中的信息
谢谢
如果我正确理解您的问题,您希望翻转
'New_Label'
,将其转换为int并将其分配给'Label'
:您可以尝试合并两个数据帧,然后使用
.assign
和np.where
。与outer
合并时,不存在的值将具有NA
,因此可以使用np.where
和notnull()
:如果不需要
New_Label
,可以使用.drop('New_Label', axis=1)
删除列。如下所示(如果写在一行中):相关问题 更多 >
编程相关推荐