Python数据统计涵盖了从数据获取、预处理到分析和可视化的全过程,以下是一份从入门到实战的完全指南:
pandas、numpy、matplotlib、seaborn、scipy、statsmodels等。可以使用pip或conda进行安装,如pip install pandas numpy matplotlib seaborn plotly scipy statsmodels scikit - learn。matplotlib绘图时,为了正常显示中文标签,可以设置plt.rcParams('font.sans-serif') = ('SimHei'),同时plt.rcParams('axes.unicode_minus') = False用于正常显示负号。pandas可以方便地从不同文件格式中加载数据,如pd.read_csv(file_path)用于加载CSV文件,pd.read_excel(file_path)用于加载Excel文件。conn = sqlite3.connect(db_path)连接数据库,然后使用pd.read_sql_query(query, conn)从数据库中读取数据。requests库从API接口获取数据,如response = requests.get(url, params=None),然后将获取到的数据转换为DataFrame格式。pandas的dropna()方法可以删除包含缺失值的行或列,fillna()方法可以用指定的值或方法填充缺失值。sklearn.preprocessing模块中的MinMaxScaler或StandardScaler进行数据标准化处理,如scaler = StandardScaler(); scaled_data = scaler.fit_transform(data)。pandas的describe()方法可以一键获取数据的计数、均值、标准差、最小值、四分位数、最大值等基本统计量。groupby()方法对数据进行分组,然后结合agg()方法进行聚合计算,如df.groupby('部门')['销售额'].agg(['sum','mean','std'])。re.findall(r'\b\w+\b', text.lower())进行分词,对于中文文本,需要使用jieba库,如seg_list = jieba.lcut(text)。使用collections模块中的Counter类可以方便地统计词频,如word_counts = Counter(text.split()); top_n = word_counts.most_common()。Matplotlib是Python的基础绘图库,Seaborn是在Matplotlib基础上进行了高级封装。可以使用plt.hist()绘制直方图,sns.lineplot()绘制折线图等。Plotly可以创建交互式图表,如import plotly.express as px; fig = px.scatter(data, x="time", y="value", trendline="ols"); fig.show()。scipy.stats模块进行假设检验,如stats.ttest_ind(group1, group2)进行独立样本T检验。statsmodels进行回归分析,如import statsmodels.api as sm; X = sm.add_constant(data['independent']); model = sm.OLS(data['dependent'], X).fit(); print(model.summary())。可以通过实际的案例来巩固所学知识,如对某电商平台的销售数据进行分析,包括销售额的趋势分析、不同地区的销售情况对比、商品类别与销售额的相关性分析等;或者对某社交媒体的文本数据进行分析,如用户评论的情感分析、高频词提取等。