繁体   English   中英

如何以特殊方式将数据帧转换为 Python 字典?

[英]How to convert data frame into Python Dictionary in particular way?

df

      experiment    score
    generation_0.chrom0 11
    generation_0.chrom1 12
    generation_0.chrom2 13
    generation_0.chrom3 14

代码:

trans_df = df.set_index("experiment").T
trans_df
a_dict = trans_df.to_dict("list")
print ( "Dictionary is ")
print ( a_dict)

Output:

字典是 {'generation_0.chrom0': [11], 'generation_0.chrom1': [12], 'generation_0.chrom2': [13], 'generation_0.chrom3': [14]}

我正在寻找在现有字典转换中的两个修改。

a)generation_0.chrom0 应该只是变成 chrom0 和其他人一样

b)当前作为列表的值应该只是数字而不是列表

预期 Output

{'chrom0': 11, 'chrom1': 12, 'chrom2': 13, 'chrom3': 14}

dict(zip(df['experiment'].str.split('.').str[-1], df['score']))

Output

{'chrom0': 11, 'chrom1': 12, 'chrom2': 13, 'chrom3': 14}

跑:

result = pd.Series(df.score.values, index=df.experiment.str.split('.').str[-1]).to_dict()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM