Чтобы извлечь отдельные значения для всех категориальных столбцов в кадре данных - PullRequest
2 голосов
/ 28 января 2020

У меня есть ситуация, когда мне нужно распечатать все различные значения, которые есть для всех категориальных столбцов в моем фрейме данных. Фрейм данных выглядит следующим образом:

Gender  Function  Segment
M       IT        LE
F       IT        LM
M       HR        LE
F       HR        LM

Вывод должен дать мне следующее :

Variable_Name    Distinct_Count
Gender           2
Function         2
Segment          2

Как этого добиться?

Ответы [ 2 ]

3 голосов
/ 28 января 2020

с использованием nunique, затем передача серии в новое datafame и установка имен столбцов.

df_unique = df.nunique().to_frame().reset_index()
df_unique.columns = ['Variable','DistinctCount']

print(df_unique)
   Variable  DistinctCount
0    Gender              2
1  Function              2
2   Segment              2
1 голос
/ 28 января 2020

Это не хорошо, но все равно не получится получить ожидаемый результат:

new_data = {'Variable_Name':[],'Distinct_Count':[]}
for i in list(df):
    new_data['Variable_Name'].append(i)
    new_data['Distinct_Count'].append(df[i].nunique())
new_df = pd.DataFrame(new_data)
print(new_df)

Вывод:

  Variable_Name  Distinct_Count
0        Gender               2
1      Function               2
2       Segment               2
...