下面是一个示例代码,用于按照地点名称的ID对列和行进行排序的交叉表查询:
import pandas as pd
# 创建一个示例数据集
data = {
'ID': [1, 2, 3, 4, 5],
'Location': ['A', 'B', 'C', 'A', 'B'],
'Value': [10, 20, 30, 40, 50]
}
df = pd.DataFrame(data)
# 使用pivot_table函数创建交叉表
cross_table = pd.pivot_table(df, values='Value', index='ID', columns='Location', aggfunc='sum')
# 按照地点名称的ID对列进行排序
cross_table = cross_table.reindex(sorted(cross_table.columns), axis=1)
# 按照地点名称的ID对行进行排序
cross_table = cross_table.sort_index()
print(cross_table)
这个示例首先创建了一个示例数据集,包含ID、地点名称和数值三列。然后使用pivot_table
函数创建一个交叉表,其中values
参数指定了要使用的数值列,index
参数指定了行索引列,columns
参数指定了列索引列,aggfunc
参数指定了在交叉表中聚合数值的方式(这里使用sum
表示求和)。
接下来,使用reindex
函数按照地点名称的ID对列进行排序,sorted
函数用于对列名称进行排序。然后,使用sort_index
函数按照地点名称的ID对行进行排序。
最后,打印出排序后的交叉表。
上一篇:按照地点和时间汇总数据库
下一篇:按照迭代表格列表查看单个表格