【问题标题】:cannot unpack non-iterable int object when using python dicitonary使用python字典时无法解压不可迭代的int对象
【发布时间】:2020-09-22 03:45:56
【问题描述】:

我有以下命令:

import pandas as pd
import numpy as np
from scipy import stats
np.random.seed(12345)

standarderrors1992 = stats.sem(np.random.normal(32000,200000,3650))
standarderrors1993 = stats.sem(np.random.normal(43000,100000,3650))
standarderrors1994 = stats.sem(np.random.normal(43500,140000,3650))
standarderrors1995 = stats.sem(np.random.normal(48000,70000,3650)) 
mean1992 = np.random.normal(32000,200000,3650).mean()
mean1993 = np.random.normal(43000,100000,3650).mean()
mean1994 = np.random.normal(43500,140000,3650).mean()
mean1995 = np.random.normal(48000,70000,3650).mean()

在这里,我找到了一组随机选择的值的平均值和标准误差。

limit = 3000
dict = {mean1992:standarderrors1992,mean1993:standarderrors1993,mean1994:standarderrors1994,mean1995:standarderrors1995} 
for key,value in dict:
    if limit > (key+(1.96*value)):
    colour = 1 
    elif limit < (key+(1.96*value)):
    colour = 0 
    elif (limit !> (key+(1.96*value))) && (limit !< (key-(1.96*value))):
    colour = ((key+(1.96*value))-limit)/((key+(1.96*value))-(key-(1.96*value)))

在这里,我试图将与均值和标准错误相对应的值放入字典中,以便我可以遍历它们。

理想情况下,我想根据特定年份的平均值和标准误差值为变量“颜色”分配一个特定值。即 1992 年的平均值和 SE

但是,我不断收到错误消息:

TypeError: cannot unpack non-iterable int object

谁能告诉我哪里出错了?

【问题讨论】:

    标签: python pandas loops dictionary boolean


    【解决方案1】:

    您需要遍历 dict.items() 才能使其工作。

    for key,value in dict.items():
        # do stuff here
    

    我建议不要将变量命名为 dict,这会影响 dict 函数的构建:)

    【讨论】:

      猜你喜欢
      • 2020-04-30
      • 2019-04-22
      • 2020-07-21
      • 1970-01-01
      • 2020-08-15
      • 1970-01-01
      • 2021-12-10
      • 2020-10-05
      • 2021-06-06
      相关资源
      最近更新 更多