Pandas DataFrame行明智比较

时间:2014-11-18 06:32:08

标签: python pandas dataframe

我有一只大熊猫DataFrame如下。

       id  label_x label_y
0        1    F    R
1        2    F    F
2        3    F    F
3        4    F    F
4        5    F    F

现在我想计算label_x和label_y的出现次数是否相等而不相等。在这种情况下,只有一次出现不相等,4次出现相等。

df = pd.DataFrame({'id' : ["1","2","3","4","5"],
                'label_x'  : ["F","F","F","F","F"], 'label_y' : ["R","F","F","F","F"]})

2 个答案:

答案 0 :(得分:2)

(df.label_x == df.label_y).value_counts()

很多方法,包括以上......

In [43]: (df.label_x == df.label_y).value_counts()
Out[43]:
True     4
False    1
dtype: int64

答案 1 :(得分:1)

我提出了这个解决方案。那是最好的吗?

def compare(x):
    if x[1] == x[2]:
        return 'yes'
    else:
        return 'no'

df['result'] =  df.apply(compare, axis=1)

df2 = pd.DataFrame({'count' : df.groupby( ["result"] ).size()}).reset_index()