【发布时间】:2020-03-18 12:04:08
【问题描述】:
我有一个这样的数据框
name data result
0 x 100
1 x 100
2 x 100
3 x 100
4 x 100
5 y 100
6 y 90
7 y 90
8 y 100
9 y 85
我想检查name 列中的每个组在data 列中是否具有相同的值。
所以对于每个x 组,如果对应的data 值都相等,则在result 列中写入full。如果一个组的值不相等,请在result 列中写入nearly。
我已尝试对数据框进行分组:
dfx = df.groupby('name')
dfx = dfa.get_group('x')
但它并不能真正帮助检查每个值是否相同,请写入result 列。
我尝试创建一个检查唯一值的函数
def check_identicals(row):
if(df.sent.nunique() == 1):
print('Full')
这里的想法是将该函数应用于每一行并将输出写入result 列。
理想输出:
name data result
0 x 100 full
1 x 100 full
2 x 100 full
3 x 100 full
4 x 100 full
5 y 100 nearly
6 y 90 nearly
7 y 90 nearly
8 y 100 nearly
9 y 85 nearly
【问题讨论】:
标签: python pandas dataframe apply