是否可以对数据帧中2行(或多行)的值进行唯一计数?我能够对个人的前6列中的df['count'] = df.iloc[:, 0:6].nunique(axis=1)
列进行唯一计数.然而,我想不出(或找到)如何获得两行(或多行)中6列的唯一计数.
原始df: 每行有3个唯一值:7、4、2和8、5、6
╔═════╦══════╦══════╦══════╦═════╦═════════╦════════╦═══════╗ ║ hf0 ║ hf1 ║ hf2 ║ hf3 ║ hf4 ║ hf5 ║ sample ║ count ║ ╠═════╬══════╬══════╬══════╬═════╬═════════╬════════╬═══════╣ ║ 7 ║ 4 ║ 2 ║ 2 ║ 7 ║ 2 ║ 7yr ║ 3 ║ ║ 8 ║ 5 ║ 5 ║ 6 ║ 5 ║ 6 ║ 7yr ║ 3 ║ ╚═════╩══════╩══════╩══════╩═════╩═════════╩════════╩═══════╝
Dftry 获得: 这两行都有6个唯一值:7、4、2、8、5、6
╔═════╦══════╦══════╦══════╦═════╦═════════╦════════╦════════╦════════════╗ ║ hf0 ║ hf1 ║ hf2 ║ hf3 ║ hf4 ║ hf5 ║ sample ║ count ║ count2rows ║ ╠═════╬══════╬══════╬══════╬═════╬═════════╬════════╬════════╬════════════╣ ║ 7 ║ 4 ║ 2 ║ 2 ║ 7 ║ 2 ║ 7yr ║ 3 ║ 6 ║ ║ 8 ║ 5 ║ 5 ║ 6 ║ 5 ║ 6 ║ 7yr ║ 3 ║ 6 ║ ╚═════╩══════╩══════╩══════╩═════╩═════════╩════════╩════════╩════════════╝
示例df代码:
import pandas as pd
import numpy as np
data = {'hf0':[7,8],'hf1':[4,5], 'hf2':[2,5],'hf3':[2,6],'hf4':[7,5],'hf5':[2,6],'sample':['7yr','7yr']}
df = pd.DataFrame(data)
df['count'] = df.iloc[:, 0:6].nunique(axis=1)
df
提前谢谢你