作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
如果这是重复的,请告诉我 - 但我尝试在 Stack 上找到答案但找不到。
你好,我不确定这是否需要递归函数 - 我有过思考,但我不确定如何最好地转换这本字典。
基本上我已经获得了一些 CSV 数据并已转换为以下列字典:
{
'column1': [Row1Col1Data, Row2Col1Data],
'column2': [Row1Col2Data, Row2Col2Data],
'column3': [Row1Col3Data, Row2Col3Data]
}
我想把它转换成这样:
{
'row1':{
'column1': Row1Col1Data,
'column2': Row1Col2Data
},
'row2':{
'column1': Row2Col1Data,
'column2': Row2Col2Data
}
}
本质上是将字典项目从列交换到行。有人可以提供帮助或链接到解决方案,因为我一直在努力寻找解决方案。
当我在第二个示例中引用 'row1'
和 'row2'
时,它们可以只是一个向上计数的整数(例如 1、2、3),它们不必是任何特定的 - 它们只代表每一行。
这是我已经尝试过的(数据是第一个代码片段的样子):
new_data = {}
for column in data:
count = 1
for data_point in column:
if key not in new_data:
new_data[str(count)] = {}
new_data[str(count)][column] = data_point
count += 1
但它不能正常工作,它似乎遍历了数据键名称的每个字母。有人可以帮我找到解决方案吗?
最佳答案
如果您没有可用的 pandas
:
{ ('row%d' % (1+i)) : {j : coldata[j][i] for j in coldata.keys()} for i in range(len(coldata['column1'])) }
关于python - 如何将列字典转换为行字典?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58879814/
我是一名优秀的程序员,十分优秀!