开始从零开始学习pandas库
# !/usr/bin/env python
# -*-encoding:utf-8-*-
# @Time:21:36
# @File:加载数据集.py
# @Author:秦时明月
import matplotlib
import pandas as pd
df=pd.read_csv(r'E:\ython\demo\data_anysis\pandas\data\gapminder.tsv',sep='\t')
print(df.head())
# 获取行数和列数
print(df.shape)
# 获取列名
print(df.columns)
# 获取每列的类型
print(df.dtypes)
# 获取更多数据信息?
print(df.info)
# 获取其中一列并保存在变量中,进行查看前5行,后5行
country_df=df['country']
print(country_df.head())
print(country_df.tail())
# 查看多列,需要转换一个python列表
subset=df[['country','continent','year']]
print(subset.head())
print(subset.tail())
# 获取第一行数据
print(df.loc[0])
print(df.loc[99])
# 获取最后一行数据
# 通过第一个值获取行数
number_row=df.shape[0]
# 行数减去1就等于最后一行数
last_row=number_row-1
print(df.loc[last_row])
# 通过最后tail获取最后一行
print(df.tail(n=1))
# 获取1,100,1000行
print(df.loc[[0,99,999]])
# iloc和loc功能相同,唯一不同的是可以传入-1
# 获取列子集
subs=df.loc[:,['year','pop']]
print(subs.head())
subt=df.iloc[:,[2,4,-1]]
print(subt.head())
# 使用range函数取子集,先把生成器转换成列表
small_range=list(range(5))
subt=df.iloc[:,small_range]
print(subt.head())
# 获取3-5
small_r=list(range(3,6))
subb=df.iloc[:,small_r]
print(subb.tail(2))
# 获取多行多列
print(df.iloc[[0,99,999],[0,3,5]])
# 如果直接使用列名用loc
# print(df.loc[[0,99,999],['列名1','列名2','列名3']])
# 分组计算
# print(df.groupby('year')['lifeExp'].mean())
global_yearl=df.groupby('year')['lifeExp'].mean()
aa=global_yearl.plot()
print(aa)