在Python中,crosstab
函數通常用于創建交叉表格
import pandas as pd
def create_crosstab(data, columns, values, aggfunc=None):
try:
ct = pd.crosstab(data[columns[0]], data[columns[1]], values=data[values], aggfunc=aggfunc)
return ct
except KeyError as e:
print(f"Error: Column '{e}' not found in the DataFrame.")
except Exception as e:
print(f"Error: {e}")
# 示例數據
data = pd.DataFrame({'A': ['foo', 'bar', 'baz', 'foo', 'bar'],
'B': ['one', 'two', 'three', 'two', 'one'],
'C': [1, 2, 3, 4, 5]})
# 使用正確的列名創建交叉表格
ct = create_crosstab(data, ['A', 'B'], 'C')
print(ct)
# 使用錯誤的列名創建交叉表格
ct = create_crosstab(data, ['A', 'D'], 'C')
在這個示例中,我們定義了一個名為create_crosstab
的函數,該函數接受四個參數:數據、列、值和聚合函數。我們使用try-except
語句來捕獲可能發生的異常。如果發生KeyError
,我們會打印出缺失的列名。對于其他類型的異常,我們會打印出相應的錯誤信息。
在這個示例中,我們首先使用正確的列名創建一個交叉表格,然后嘗試使用錯誤的列名創建交叉表格。在第二種情況下,我們會捕獲到KeyError
并打印出相應的錯誤信息。