2019年Pandas官方用户调研

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

%matplotlib inline

plt.rcParams['figure.dpi'] = 150

# 让 matplotlib 支持中文
plt.rcParams['font.sans-serif'] = ['SimHei']

# 让 seaborn 的文字大一些
sns.set( font='SimHei', font_scale=1.2)

# # 让 MacOS 下的 Matplotlib 与 Seaborn 支持中文
# plt.rcParams['font.family'] = ['Arial Unicode MS']
# sns.set_style('whitegrid',{'font.sans-serif':['Arial Unicode MS','Arial']})


# 用来正常显示负号,这里其实用不上
plt.rcParams['axes.unicode_minus'] = False

df = pd.read_csv("data/2019.csv.zip", parse_dates=['日期时间'], encoding="GBK")

# df.head()
order = [
    '少于 3 个月',
    '3 个月 至 1 年',
    '1 至 2 年',
    '3 至 5 年',
    '5 年以上',
]

sns.countplot(y='您用 pandas 多久了?',
              data=df, order=order,
              color='k').set(title="您用 pandas 多久了?",
                             ylabel="")
sns.despine()

793818-20190920115401351-1900704229.png

order = [
    "刚开始用",
    "偶尔",
    "每周",
    "每天"
]

sns.countplot(y='pandas 使用频率', data=df, order=order,
              color='k').set(title="pandas 使用频率",
                             ylabel="")
sns.despine()
pct_format = "{:0.2%}".format

df['Python 是您的主打语言吗?'].str.replace(
    "否.*", "否").value_counts(normalize=True).apply(pct_format)

是 90.67%
否 9.33%
Name: Python 是您的主打语言吗?, dtype: object

这里用 0.25 版推出的 explode 方法定义了个函数

def split_and_explode(s):
    return s.str.split(";").explode().to_frame()

Pandas API

sns.countplot(y='您常用哪个读写器读取数据?',
              data=df['您常用哪个读写器读取数据?'].str.split(';').explode().to_frame(),
              color='k').set(title="您常用哪个读写器读取数据?",
                             ylabel="")
sns.despine();

793818-20190920115510494-175365364.png

sns.countplot(y='处理 100 列及以上大型 DataFrame 的频率',
              data=df, color='k').set(title="处理大型 DataFrame 的频率",
                                      ylabel="");
sns.despine()

793818-20190920115531006-616382225.png

sns.countplot(y='Pandas 满意度',
              data=df[['Pandas 满意度']].dropna().astype(int),
              color='k').set(title="Pandas 满意度",
                             ylabel="")
sns.despine();

793818-20190920115555164-981270057.png

参考来源
微信公众号: Python大咖谈(id:pythoniao)

转载于:https://www.cnblogs.com/hankleo/p/11556116.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值