动手学数据分析 | 函数大杂烩

在这里我主要复习一下用到的函数

本次课程的总任务是实战kaggle上泰坦尼克号的任务,对其数据集进行分析, 主要利用pandas实现。

第一章 :数据载入及初步观察

导入numpy和pandas: from numpy as np , from pandas as pd

载入/读入数据:pd.read_csv()等

修改数据:使用.rename等方法修改数据,set_index来设置索引

查看数据:使用df.info() , df.describe()方法

保存数据:df.to_csv()

了解数据类型DataFrame和Series:

Series是由索引和列组成,pd.Series(values, index=[ ], name=” “, dtype=” “) ,其中values可以使用[ ,,,, ] 或者类似字典的方式 {” “: ,” “: ,” “: }

DataFrame,pd.DataFrame(values, index=[ ], columns=[ ], dtype=” “)

查看值:df[ ].head() df. .head()

删除: del df.drop()等方法

隐藏: df.drop()

筛选 : df[df[“Age”]

抽取数据 : data.loc[index,column] df.iloc[ , ]

df.loc[[100,105,108],['Pclass','Name','Sex']].head() loc函数主要基于行标签和列标签进行索引
df.iloc[[100,105,108],[2,3,4]]  iloc函数主要基于行索引和列索引

排序: df.sort_values( ) 对值进行排列 df.sort_index() 对索引进行排列 (默认行索引,默认升序)

算术计算: frame1_a + frame1_b等等

第二章 :数据清洗及特征处理

缺失值观察: data.info() data.isnull( ) data.notnull( )

缺失值处理:data.dropna() 删除缺失值 data.fillna() 清理并填充缺失值 data.replace() 替换通用值

重复值观察: df.duplicated() 查找并显示数据表中的重复值

重复值处理: drop_duplicates() 去重函数

特征观察与处理: 数据特征分为两大类:数值特征(离散数值特征、连续数值特征)、文本特征

连续数值特征需要离散化处理: pd.cut() 分箱操作

对文本变量进行转换:

(1)查看文本变量名及种类 .value_counts() .unique() .nunique()

(2)将文本变量用数值表示 .replace([“male”,”female”],[1,2]) .map({‘male’: 1, ‘female’: 2}) LabelEncoder()

(3)将文本变量用one-hot编码表示

数据的合并: pd.concat([ , ],axis=) ,pd.merge( ) ,或使用DataFrame自带的方法 df.join( )和 df.append( )

数据聚合: df.groupby() 聚合函数 df .agg() 聚合函数

第三章 :数据建模和模型评估

使用一个机器学习最常用的一个库(sklearn)来完成模型的搭建和评估

3.1 建模

切割数据集为测试集和训练集:

from sklearn.model_selection import train_test_split

 train_test_split() 

模型创建:

 from sklearn.linear_model import LogisticRegression

lr = LogisticRegression()

模型训练 / 拟合数据集:

lr.fit(X_train, y_train) 

查看训练集和测试集score值:

lr.score(X_train, y_train)

输出预测标签:

lr.predict(X_train)

预测标签概率:

lr.predict_proba(X_train)

交叉验证:

from sklearn.model_selection import cross_val_score

cross_val_score(lr, X_train, y_train, cv=10)

混淆矩阵:

from sklearn.metrics import confusion_matrix

confusion_matrix(y_train, pred)

精确率、召回率以及f-分数:

from sklearn.metrics import classification_report

classification_report(y_train, pred)

ROC曲线:

from sklearn.metrics import roc_curve

fpr, tpr, thresholds = roc_curve(y_test, lr.decision_function(X_test))

plt.plot(fpr, tpr, label="ROC Curve")

(1):https://linklearner.com/datawhale-homepage/#/learn/detail/50

(2):https://github.com/datawhalechina/hands-on-data-analysis

(3):https://gitee.com/datawhalechina/hands-on-data-analysis
– B站视频:https://www.bilibili.com/video/BV1Uv411p77r
– 关于Pandas的操作,你可以参考Joyful-Pandas,可以让你的数据分析学习事半功倍:https://gitee.com/cocowjy1126/joyful-pandas
– 本次学习使用的书籍《利用Python进行数据分析》

Original: https://blog.csdn.net/j125800001/article/details/126831137
Author: 江某1111号机
Title: 动手学数据分析 | 函数大杂烩

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/754514/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球