gpt4 book ai didi

python - 未正确调用 DataFrame 构造函数

转载 作者:行者123 更新时间:2023-12-05 08:18:43 24 4
gpt4 key购买 nike

我正在尝试使用 Python 创建数据框,这会在问题标题中引发错误

  # pre processing to get G-Test score
def G_test(tokens, types):
tokens_cnt = tokens.value_counts().astype(float)
types_cnt = types.value_counts().astype(float)
total_cnt = float(sum(tokens_cnt))

# calculate each token counts
token_cnt_table = collections.defaultdict(lambda : collections.Counter())
for _tokens, _types in zip(tokens.values, types.values):
token_cnt_table[_tokens][_types] += 1


tc_dataframe = pd.DataFrame(token_cnt_table.values(), index=token_cnt_table.keys())

tc_dataframe.fillna(0, inplace=True)
for column in tc_dataframe.columns.tolist():
tc_dataframe[column+'_exp'] = (tokens_cnt / total_cnt) * types_cnt[column]
c_dataframe[column+'_GTest'] = [G_test_score(tkn_count, exp) for tkn_count, exp in zip(tc_dataframe[column], tc_dataframe[column+'_exp'])]
return tc_dataframe

最佳答案

pd.DataFrame构造函数不接受字典 View 作为数据。您可以改为转换为 list。这是一个最小的例子:

d = {'a': 1, 'b': 2, 'c': 3}

df = pd.DataFrame(d.values(), index=d.keys())
# PandasError: DataFrame constructor not properly called!

df = pd.DataFrame(list(d.values()), index=d.keys())
# Works!

文档确实建议这样做:

data : numpy ndarray (structured or homogeneous), dict, or DataFrame

等效地,您可以使用 pd.DataFrame.from_dict , 它直接接受字典:

df = pd.DataFrame.from_dict(d, orient='index')

关于python - 未正确调用 DataFrame 构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52946094/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com