python - 替换转置数据框中的百分比并将行值打印为描述文本
问题描述
我有这个数据框:
df = pd.DataFrame([["A", "2000-01", "100", "10%"],
["A", "2000-02", "200", "20%"],
["B", "2000-01", "150", "15%"],
["B", "2000-02", "150", "15%"],
["C", "2000-01", "250", "25%"],
["C", "2000-02", "350", "35%"],
["D", "2000-01", "500", "50%"],
["D", "2000-02", "300", "30%"],],
columns=["Label", "Date", "Count", "Percentage"])
我想将其转置为
日期 | 一个 | 乙 | C | D |
---|---|---|---|---|
2000-01 | 10% | 15% | 25% | 50% |
2000-02 | 20% | 15% | 35% | 30% |
和
df_T= df.groupby(['Date','Label']).sum().transpose().stack(0).reset_index()
del df_T['level_0']
df_T[['A','B','C','D']] = df_T[['A','B','C','D']].apply(lambda x: x/x.sum(), axis=1)
我有点明白了。
但我在百分比格式上失败了。认为这会起作用,但没有(出现错误):
df_T['A','B','C','D'] = df_T['A','B','C','D'].map('{:,.2f}%'.format)
我在这里想念什么?
也很重要,我想将一些输出打印为:
"在 2000-01 年,A = 10%,B = 15%,C = 25%,D = 50%。\n 在 2000-02 年,A = 20%,B = 15%,C = 35%,D = 30%。”
将后续绘图的描述文本作为图像(以防图像在页面上不可见并且可访问性很重要)。
最好的方法是什么?
我会很感激一些帮助!
解决方案
推荐阅读
- cocotb - cocotb示例代码开始工作的问题
- ruby - 保存禁止对列表的最有效数据结构
- python - status": 500, "body": "HTTP Error 400: Invalid URI: isHexDigit" 同时使用 skimage 将 s3 上的图像下载到本地
- javascript - 使用 django 将来自数组的数组中的数据传递给 chartjs
- php - php解析多级 - xml到数组
- ios - 如何在原生 iOS 文件应用程序中创建 ContextMenu 动画?
- javascript - Express:解析传递给 ejs 文件的解析对象的最安全方法:
- .net-core - 在本地调试 C# Azure 函数时静默终止进程
- css - React:sass-loader 没有将 SCSS 转换为 CSS
- javascript - 我可以将 .js 文件内容(或代码)导入 gatsby 中的 mdx 吗?