【发布时间】:2019-04-29 11:32:57
【问题描述】:
在周围一些很棒的人的帮助下,我能够在 seaborn 中生成我的第一个箱形图。我有 2 个单独的 seaborn 图,显示了 excel 表中的两个比较。我现在想要做的是在同一个图上显示两个数据比较(如下两列所示),本质上是创建一个分组箱线图。我试图将数据转换为数据帧,concat,然后融化它,但没有成功。我对python很陌生,所以我想知道你们是否都可以帮助我。以下是我的代码。
import pandas as pd
import numpy as np
import xlrd
import matplotlib.pyplot as plt
import seaborn as sns
%matplotlib inline
from pandas import ExcelWriter
from pandas import ExcelFile
from pandas import DataFrame
excel_file = 'Project File Merger.xlsm'
list_dfs = []
xls = xlrd.open_workbook(excel_file,on_demand=True)
sheet_names = xls.sheet_names()
d_data = {}
for i, sheet_name in enumerate(xls.sheet_names()):
df = pd.read_excel(excel_file,sheet_name)
d_data[sheet_names[i]] = df.loc[:,['HMB','PSPPM']]
keys = list(d_data.keys())
values_list1 = list(d_data.values())
print(keys[0])
print(values_list1[0])
返回
Check1.xlsm
HMB PSPPM
0 0.141005 0.429498
1 0.141005 0.429498
2 0.066071 0.706797
3 NaN 0.080378
4 0.045815 0.004076
5 NaN 0.630156
6 NaN 0.723957
7 NaN 0.712118
8 0.391531 0.791329
9 0.036823 0.506834
10 0.391531 0.791329
现在这就是我卡住的地方。我有一个包含 17 个元素的 values_list(excel 文件中的每个工作表一个)。我希望将每张工作表中的数据组合在一起。我想我可能会遇到问题,因为每个列表元素中有 2 列?任何建议将不胜感激!
【问题讨论】:
标签: python pandas matplotlib seaborn