官方调研重磅宣告,Pandas或将重构?
发布时间:2021-06-05 14:50:03 所属栏目:大数据 来源:互联网
导读:为指引 Pandas 未来开发方向,Pandas 官方团队于 2019 年夏搞了一次调研,这次调研历时 15 天,共有 1250 条反馈数据。问卷数据保存在 data 文件夹的 2019.csv.zip 文件里。 这里又学一招,原来 pandas 可以直接从压缩文件里读取数据文件,原文用的是 .gz 文
|
为指引 Pandas 未来开发方向,Pandas 官方团队于 2019 年夏搞了一次调研,这次调研历时 15 天,共有 1250 条反馈数据。问卷数据保存在 data 文件夹的 2019.csv.zip 文件里。
这里又学一招,原来 pandas 可以直接从压缩文件里读取数据文件,原文用的是 .gz 文件,呆鸟这里用 .zip 也可以。
下列代码读取问卷数据,并对 matplotlib、seaborn 的字体进行设置,其中还包括了,如何在 macOS 里显示中文。
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()
答卷人分析
绝大多数答卷人都具有丰富的 pandas 使用经验,使用频率也很高。
order = [
'少于 3 个月',
'3 个月 至 1 年',
'1 至 2 年',
'3 至 5 年',
'5 年以上',
]
sns.countplot(y='您用 pandas 多久了?',
data=df, orderorder=order,
color='k').set(title="您用 pandas 多久了?",
ylabel="")
sns.despine()
order = [
"刚开始用",
"偶尔",
"每周",
"每天"
]
sns.countplot(y='pandas 使用频率', data=df, orderorder=order,
color='k').set(title="pandas 使用频率",
ylabel="")
sns.despine()
为了对比 Pandas 与 Python 的流行度,我们的问卷里提出了一些 Python 开发者调研问卷问过的问题。
90% 的答卷人把 Python 作为主开发语言,Python 软件基金会调研报告里的数据为 84%。
pct_format = "{:0.2%}".format
df['Python 是您的主打语言吗?'].str.replace(
"否.*", "否").value_counts(normalize=True).apply(pct_format)
是 90.67%
否 9.33%
Name: Python 是您的主打语言吗?, dtype: object
数据显示 Windows 用户居多。
oses = [
"Linux",
"Windows",
"MacOS"
]
df['您用哪种操作系统?'].str.split(';').explode().value_counts().div(
len(df)).loc[oses].apply(pct_format)
Linux 61.57%
Windows 60.21%
MacOS 42.75%
Name: 您用哪种操作系统?, dtype: object
这里用 0.25 版推出的 explode 方法定义了个函数。
def split_and_explode(s):
return s.str.split(";").explode().to_frame()
conda 是最流行的虚拟环境工具。
replace = {
"否,我不用虚拟环境": "否"
}
col = '您是否用过下列 Python 虚拟环境工具?(多选)'
sns.countplot(y=col,
data=split_and_explode(df[col]).replace(replace),
color='k').set(title='您是否用过下列 Python 虚拟环境工具?',
ylabel="")
sns.despine()
绝大多数答卷人只用 Python 3。
df['Python 2 还是 3?'].value_counts(normalize=True).rename(
index={"2;3": "2 & 3"}).apply(pct_format)
3 92.39%
2 & 3 6.80%
2 0.81%
Name: Python 2 还是 3?, dtype: object
Pandas API
开源软件团队很难了解用户实际爱用哪些功能,这次调研,我们特地提了一些问题,了解了大家的喜好。
CSV 与 Excel 是最流行的文件类型,真是让人喜忧参半。
sns.countplot(y='您常用哪个读写器读取数据?',
data=df['您常用哪个读写器读取数据?'].str.split(';').explode().to_frame(),
color='k').set(title="您常用哪个读写器读取数据?",
ylabel="")
sns.despine();
![]() (编辑:周口站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |

