第一单元--使用kaggle上的泰坦尼克数据进行EDA
)
第一章:第一节数据载入及初步观察
这个数据我以前就看过它的eda的示例,非常适合入门。
datawhale提供的文档里包含了一个代码是空,配合注释的,和一个代码写好了的。
在代码为空的地方先自己做,再去对答案,查漏补缺。
下面记录一下我需要注意改进的地方:
之前用的比较多的是df.describe() 和df.dtypes。这里用df.info()就可以看到所有列的数据类型和有无null,包括非数值型的。有空值的列:年龄 714 non-null ,小于总行数891,所以有空值。客舱列空值更多。
df.tail(10)对应head函数
df.to_csv(‘tablename.csv’),注意是df也就是要输出的dataframe名,而不是pd,跟read不同。
第一章:第二节pandas基础
我需要改进的地方:
查看"Cabin"这列的所有值
我用了unique(),应该比示例的head(3)更合适
删除a列的时候,不能用del test_1.a,应该用del test_1[‘a’]
也可以用test_1.drop(columns=‘a’,inplace=True)
midage = midage.reset_index(drop=True)
注意:drop=True就是把原来的索引index列去掉,重置index。
drop=False就是保留原来的索引,添加重置的index。
两者的区别就是有没有把原来的index去掉。
1.5.4 任务四:使用loc方法将midage的数据中第100,105,108行的"Pclass","Name"和"Sex"的数据显示出来
midage.loc[[100,105,108],[‘Pclass’,‘Name’,‘Sex’]]
loc多个不连续行!
pandas (loc、iloc、ix)的区别
loc:通过行标签索引数据
iloc:通过行号索引行数据
ix:通过行标签或行号索引数据(基于loc和iloc的混合)
midage.iloc[[100,105,108],[2,3,4]]
loc:works on labels in the index.
iloc:works on the positions in the index (so it only takes integers).
loc也能混合了,ix跑不通了,貌似已经被官方弃用了
第一章:第三节探索性数据分析
按某一列排序
frame.sort_values(by=‘c’,ascending=True)
让行索引升序排序
frame.sort_index()
让列索引升序排序
frame.sort_index(axis=1)
一列数据的基本统计数据
text[‘票价’].describe()
text.describe()
text.corr()
相关性分析corr得到,仓位等级和票价与是否生还的相关性最大。