当前位置: 首页 > 知识库问答 >
问题:

Python csv文件到数据字典多个键

赫连飞沉
2023-03-14

我有一个巨大的csv文件,有4列。我想把它们转换成数据字典。第一列[0]应该是主键。当我试图使用字典时,我得到了一个关键错误。

csv文件中的列:代码描述类别详细信息

CSV文件

with open('sample.csv') as f:
reader = csv.reader(f)
next(reader,None)
code= {}
description= {}
category = {}
detail = {} 
for row in reader:
    code = {row[0]:row[1]}
    description =  {row[0]:row[2]}
    category = {row[0]:row[3]}
    detail = {row[0]:row[4]}

输出:{101:'笔',102:'103:'书'104:'纸'}

{101:'写作',102:'东西',103:'学校',104:'办公室'}

{101:'stuff',102:'stuff',103:'104:'

共有1个答案

叶炜
2023-03-14

您可以执行以下操作:

import pandas as pd

df = pd.read_csv("sample.csv")
df.to_dict('records')

首先,您可以将它作为DataFramePandas导入,然后将其转换为带有参数记录的。在这里,您可以看到to_dict如何工作。

 类似资料:
  • 问题内容: 这个问题已经在这里有了答案 : 水平写CSV (2个答案) 6年前关闭。 多亏了另一个线程,我才以Python初学者的身份成功地将字典写到了csv中:将字典写到 csv文件中,每个“键:值”一行] csv看起来像这样: 现在,我想知道用相同的键组织多个词典的最佳方法是什么。我希望将键作为第一列,然后在其后的各列中使用dict值,所有这些都具有第一行以按字典名称区分各列。 当然,有很多线

  • 问题内容: 假设我有一本看起来像这样的字典: 我想要一个看起来像这样的数据框: 有方便的方法吗?如果我尝试: 我得到一个数据框,其中每个元素都是一个列表。我需要的是一个多索引,其中每个级别对应于嵌套dict中的键,而行对应于列表中每个元素,如上所示。我认为我可以使用非常粗糙的解决方案,但我希望可能会有一些简单的事情。 问题答案: 熊猫希望MultiIndex值作为元组,而不是嵌套字典。最简单的方法

  • abilities - 所有权限节点 ability_role - 用户组权限 advertising - 广告列表 advertising_space - 广告位 answer_onlooker - 被围观的答案 answers - 答案 areas - 地区配置 around_amaps - 用户坐标 certification_categories - 认证分类 certifications

  • 问题内容: 我整个上午都在搜索,但是大多数合并示例仅基于一个键,而在多个键上却找不到任何东西。 pid = 111,sid = 6,eid = 123的值在x和y中都匹配,然后合并为一条记录。如果它们不匹配,只需将其原样带过来。 我想要的最终结果: 问题答案: 这是从元组中重新锁定:

  • 我有两个配置文件(“autoContido”和“weblogic”),其中每个配置文件都有两个配置类,因为我使用的是两个数据源。 我已经将特定数据源中的bean注释为@Primary,而另一个数据源配置类中的bean不是@Primary,但我对它们的命名不同。 我以为使用@主注释就不会有像下面这样的错误,但我仍然得到它们。有人能帮我看看问题出在哪里吗? 我尝试使用@Primary annotati

  • 问题内容: 我正在尝试将字典写到txt文件。然后使用键入键,以读取dict值。我感觉好像只想走一步,但现在已经找了一段时间。 我得到这个错误 我的代码: 问题答案: 您的代码 几乎正确 !没错,您只差一步。当您读入文件时,您将以字符串形式读取它;但是您想将字符串转换成字典。 您看到的错误消息是因为是字符串,而不是字典。 我首先写道,您可以只将字符串输入其中,但这不起作用!您需要做其他事情。 例 这