python数据可视化练习(一)

python数据可视化练习(一),第1张

涉及内容:使用for循环对DataFrame中的全部数据做映射变换(没有使用映射方法),并把多列数据合并为一长列,最后结合seaborn库绘制出九个字段的直方图,并使用3×3的方式排列图表在一张画布上。

导包

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

小啾某次做数据分析,处理部分清洗后问卷数据df5如下:


其中A、B、C、D、E分别表示的是群众对该意见的支持度,1,2,3,4,5。
然后将数据转化为支持度:

df6 = pd.DataFrame(index=range(len(df5)))

for i in df5.columns:
    a = []
    for j in df5[[i]].values:
        if j == 'A':
            a.append(1)
        elif j == 'B':
            a.append(2)
        elif j == 'C':
            a.append(3)
        elif j == 'D':
            a.append(4)
        elif j == 'E':
            a.append(5)
    df6[i[3:]] = a
print(df6)

         


使用pandas的melt方法把“宽”数据的多列合并成为一长列。

d = {
    "建议1": df6[["建议1"]].values,
    "建议2": df6[["建议2"]].values,
    "建议3": df6[["建议3"]].values,
    "建议4": df6[["建议4"]].values,
    "建议5": df6[["建议5"]].values,
    "建议6": df6[["建议6"]].values,
    "建议7": df6[["建议7"]].values,
    "建议8": df6[["建议8"]].values,
    "建议9": df6[["建议9"]].values
}
m = pd.melt(df6)
print(m)

m输出如下:
                     


将九个字段,绘制出九个条形图,代码如下:

sns.set_style('darkgrid')
plt.rcParams['font.sans-serif'] = ['STKAITI']
g = sns.FacetGrid(m, col='variable', col_wrap=3)
g = g.map(sns.histplot, 'value')

图像效果如下:

       


本次练习分享就到这里,小啾祝您学习愉快!
🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/755868.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-30
下一篇 2022-04-30

发表评论

登录后才能评论

评论列表(0条)

保存