【问题标题】:how do i load csv into array?如何将 csv 加载到数组中?
【发布时间】:2018-03-05 09:03:57
【问题描述】:

我正在使用 pandas 加载包含问题/答案的 csv 文件并将它们分配给 dict。

kids_csv_file = pd.read_csv(...) #columns Questions, SubQuestions, Answers

questions_dict = dict()

for i in ... :
_key = kids_csv_file.Questions[i] + '-' + kids_csv_file.SubQuestion[i]
questions_dict[_key] = kids_csv_file.Answers[i];

我得到:

TypeError: 必须是 str,而不是 numpy.int64

【问题讨论】:

标签: python pandas csv


【解决方案1】:

如前所述,kids_csv_file.Questions[i] 不是字符串,因此 python 不能使用字符串的加号运算符将其连接到其他字符串。不过,您可以使用 format 方法:

questions_dict['{}-{}'.format(kids_csv_file.Questions[i], kids_csv_file.SubQuestion[i])] = kids_csv_file.Answers[i];

或者更好的是,在不同的行中创建索引:

index = '{}-{}'.format(kids_csv_file.Questions[i], kids_csv_file.SubQuestion[i])
questions_dict[index] = kids_csv_file.Answers[i];

【讨论】:

    【解决方案2】:

    因为 kids_csv_file.Questions[i] + '-' + kids_csv_file.SubQuestion[i] 不是字符串。 当你输入kids_csv_file.Questions[i] + '-' + kids_csv_file.SubQuestion[i] python认为,字符串'-'必须与对象kids_csv_file.Questions[i]kids_csv_file.SubQuestion[i]结合在一起

    步骤 1) 在单独的行中创建字符串

    第 2 步)追加到 dict 你的值

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-07-08
      • 1970-01-01
      • 1970-01-01
      • 2019-06-13
      • 2020-09-21
      • 2017-10-21
      相关资源
      最近更新 更多