Python中文
首页
教程
问答
标签
搜索
登录
注册
如何防止多值字典对象将每个单词拆分为单个字母字符串?
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我有一个dictionary对象,如下所示:</p> <pre><code>my_dict = {123456789123: ('a', 'category'), 123456789456:('bc','subcategory'),123456789678:('c_d','subcategory')} </code></pre> <p>下面的代码提取df中列标题中的整数并将其与字典中的键进行比较,然后通过选择第二个值作为新df的列,选择第一个值作为df中的值来创建新的dataframe</p> <p>代码:</p> <pre><code>names = df.columns.values new_df = pd.DataFrame() for name in names: if ('.value.' in name) and df[name][0]: last_number = int(name[-13:]) print(last_number) key, value = my_dict[last_number] try: new_df[value][0] = list(new_df[value][0]) + [key] except: new_df[value] = [key] </code></pre> <p>新数据框:</p> <pre><code> category subcategory 0 a [b, c, c_d] </code></pre> <p>我不确定是什么导致了我的代码中出现这种情况,但是如何防止<code>bc</code>分裂呢</p> <p>编辑:</p> <p>上面的示例:</p> <pre><code>data.value.123456789123 data.value.123456789456 data.value.123456789678 TRUE TRUE TRUE </code></pre> <p>新的数据框应如下所示:</p> <pre><code> category subcategory 0 a [bc, c_d] </code></pre>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>使用<code>DataFrame</code>构造函数和<code>groupby</code></p> <pre><code>df=pd.DataFrame(list(my_dict.values())) df.groupby(1)[0].apply(list).to_frame(0).T 1 category subcategory 0 [a] [bc, c_d] </code></pre>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
如何合并多个PDF文件?
7 回答
如何合并多个xarray数据变量及其坐标?
7 回答
如何合并多个列中具有重复值的行
7 回答
如何合并多个唯一id
10 回答
如何合并多个图纸并使用图纸名称的名称重命名列名?
2 回答
如何合并多个字典并添加同一个键的值?(Python)
2 回答
如何合并多个搜索结果文件(pkl)以将它们全部打印在一起?
3 回答
如何合并多个数据帧
2 回答
如何合并多个数据帧并使用Pandas为假人添加列?
9 回答
如何合并多个数据帧并按时间戳排序
9 回答
如何合并多个数据帧的列表并用另一个lis标记每列
2 回答
如何合并多个数据框中的列
1 回答
如何合并多个文件?
9 回答
如何合并多个查询集?
2 回答
如何合并多个绘图?
10 回答
如何合并多个词典
9 回答
如何合并多个输入数据集(数据帧)?
9 回答
如何合并多条记录中拆分的文本行
3 回答
如何合并多索引列datafram
4 回答
如何合并多级(即多索引)数据帧?
5 回答