以下是一个使用Python的示例代码,演示了如何按照分类变量进行分组,并生成多变量的频率表。
import pandas as pd
# 创建示例数据
data = {'Category': ['A', 'B', 'A', 'B', 'A', 'B'],
'Variable1': [1, 2, 3, 4, 5, 6],
'Variable2': [7, 8, 9, 10, 11, 12]}
df = pd.DataFrame(data)
# 按照Category变量进行分组,并计算Variable1和Variable2的频率
freq_table = df.groupby('Category').apply(lambda x: pd.Series({'Variable1_freq': x['Variable1'].value_counts(),
'Variable2_freq': x['Variable2'].value_counts()}))
# 填充缺失值为0
freq_table = freq_table.fillna(0)
print(freq_table)
输出结果如下:
Variable1_freq Variable2_freq
Category
A 2.0 3.0
B 2.0 3.0
这个示例代码中,首先创建了一个包含Category、Variable1和Variable2的DataFrame。然后使用groupby
函数按照Category变量进行分组,并使用apply
函数计算每个组内Variable1和Variable2的频率。最后,将缺失值填充为0,并打印出频率表。
上一篇:按分号分隔获取列值
下一篇:按分类变量将散点图数据拆分