Pandas:具有最多唯一值的 select 列
Pandas: select column with most unique values
我有一个 pandas DataFrame 并且想要找到 select 具有最多唯一值的列。
我已经使用 nunique() 过滤了唯一值。我现在如何选择具有最高 nunique() 的列?
到目前为止,这是我的代码:
numeric_columns = df.select_dtypes(include = (int or float))
unique = []
for column in numeric_columns:
unique.append(numeric_columns[column].nunique())
我稍后需要根据此列(大多数唯一项)过滤我数据框中的所有列
使用DataFrame.select_dtypes
with np.number
, then get DataFrame.nunique
with column by maximal value by Series.idxmax
:
df = pd.DataFrame({'a':[1,2,3,4],'b':[1,2,2,2], 'c':list('abcd')})
print (df)
a b c
0 1 1 a
1 2 2 b
2 3 2 c
3 4 2 d
numeric = df.select_dtypes(include = np.number)
nu = numeric.nunique().idxmax()
print (nu)
a
我有一个 pandas DataFrame 并且想要找到 select 具有最多唯一值的列。 我已经使用 nunique() 过滤了唯一值。我现在如何选择具有最高 nunique() 的列?
到目前为止,这是我的代码:
numeric_columns = df.select_dtypes(include = (int or float))
unique = []
for column in numeric_columns:
unique.append(numeric_columns[column].nunique())
我稍后需要根据此列(大多数唯一项)过滤我数据框中的所有列
使用DataFrame.select_dtypes
with np.number
, then get DataFrame.nunique
with column by maximal value by Series.idxmax
:
df = pd.DataFrame({'a':[1,2,3,4],'b':[1,2,2,2], 'c':list('abcd')})
print (df)
a b c
0 1 1 a
1 2 2 b
2 3 2 c
3 4 2 d
numeric = df.select_dtypes(include = np.number)
nu = numeric.nunique().idxmax()
print (nu)
a