我正在尝试在 Python 中获取 table() 等效函数(来自 R)。
我有一张 table :
+-----+--------+
| Sr | Gender |
+-----+--------+
| 123 | M |
+-----+--------+
| 124 | M |
+-----+--------+
| 126 | M |
+-----+--------+
| 127 | F |
+-----+--------+
| 128 | F |
+-----+--------+
预期输出:
+---+---+
| M | F |
+---+---+
| 3 | 2 |
+---+---+
在 R 中,可以通过 table(df$Gender)
轻松实现
但不知道如何在 Python 中实现这一点。我尝试过 crosstab() 和 hub_table() 但无法获得确切的语法。
最佳答案
您可以通过几种方式来实现,具体取决于您想要获得的内容:
df = pd.read_clipboard()
In [629]: df.Gender.value_counts()
Out[629]:
M 3
F 2
or
print(pd.value_counts(df['Gender']).to_frame().T.to_string(index=False))
M F
3 2
In [630]: pd.DataFrame(df.Gender.value_counts())
Out[630]:
Gender
M 3
F 2
In [632]: pd.DataFrame(df.Gender.value_counts()).T
Out[632]:
M F
Gender 3 2
或者您的具体情况:
In [643]: pd.DataFrame(df.Gender.value_counts()).rename(columns={'Gender': ''}).T
M F
3 2
关于python - Python 中的 table() 等效函数(来自 R),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59485417/