Python数据分析学习笔记(一)——数据加载及探索性数据分析

Python数据分析学习笔记(一)——数据加载及探索性数据分析,第1张

Python数据分析学习笔记(一)——数据加载及探索性数据分析 一、数据类型Dataframe和Series

Dataframe

Dataframe是一种表格型数据结构,它含有一组有序的列,每列可以是不同的值。

help(pandas.Dataframe)   #可以用于查看对数据类型的详细说明

data = {'Name': ['Susan', 'Bob', 'Ella', 'Crystal'],
      'Age': [13, 14, 15, 16],
      'Class': [1,1,3,4]
        }
example_2 = pd.Dataframe(data)           #可以利用字典创建
example_2

#输出
      Name  Age  Class
0    Susan   13      1
1      Bob   14      1
2     Ella   15      3
3  Crystal   16      4

两个Dataframe数据想加后会返回一个新的Dataframe数据,对应的行和列会相加(索引对应),没有对应的部分会返回空值NaN

Series
Series序列,是一种一维的结构,由两部分组成:索引index和数值values。可以通过字典来创建Series:

sdata = {'Susan': 13, 'Bob': 14, 'Ella': 15, 'Crystal': 16}
example_1 = pd.Series(sdata)
example_1
#输出
Susan      13
Bob        14
Ella       15
Crystal    16
二、数据载入及初步观察

导入numpy及pandas

import numpy as np
import pandas as pd

载入数据

df = pd.read_csv('train.csv')

查看Dataframe数据每列的名称

df.columns
df.keys()
#输出
Index(['PassengerId', 'Survived', 'Pclass', 'Name', 'Sex', 'Age', 'SibSp','Parch', 'Ticket', 'Fare', 'Cabin', 'Embarked'],dtype='object')

查看"Cabin"这列的所有值
方法1:

df['Cabin']  #方法1
df.Cabin    #方法2

对比两个csv文件的列,然后将后者多出的列删除

df1 = pd.read_csv('test_1.csv')
df1.columns
#输出
Index(['Unnamed: 0', 'PassengerId', 'Survived', 'Pclass', 'Name', 'Sex', 'Age','SibSp', 'Parch', 'Ticket', 'Fare', 'Cabin', 'Embarked', 'a'],dtype='object')
#删除最后一列
df1.drop(['a'],axis=1,inplace=True)

删除某一列的方式汇总:

df1 = df1.drop(['a'],1)
df1.drop(['a'],axis=1,inplace=True)
df1.drop([df1.columns[-1]], axis=1,inplace=True) 
del df1(['a']) 

隐藏某几列的方式:

df.drop(['PassengerId','Name','Age','Ticket'],1) #不使用inplace = True即可
三、筛选数据

以"Age"为筛选条件,显示年龄在10岁以下的乘客信息:

df[df['Age']<10].head(5)

以"Age"为条件,将年龄在10岁以上和50岁以下的乘客信息显示出来:

midage = df[df['Age']>10 & df['Age']<50]

将midage的数据中第100行的"Pclass"和"Sex"的数据显示出来:

midage = midage.reset_index(drop=True) #重置索引,drop=True不保留原来的索引
midage.loc[[100],['Pclass','Sex']]

iloc:根据标签所在位置选择,先行后列
loc:根据标签选择,同样先行后列

midage.loc[[100,105,108],['Pclass','Name','Sex']]
midage.iloc[[100,105,108],[2,3,4]]
四、数据排序
df.sort_values(by='c')   #按照某一列的值做升序排序
df.sort_index()        #按照行索引排序
df.sort_index(axis=1, ascending=False)  #按照列索引降序排序
df.sort_values(by=['Fare','Age'])   #按照某两列的值做升序排序,先按照票价升序,再按照年龄升序
df.describe()    #观察数据的基本统计信息:数据大小、平均值、标准差等

以上学习内容来自Datawhale

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5710636.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存