Python的Pandas库简述
pandas 是 python 的数据分析处理库
import pandas as pd
1、读取CSV、TXT文件
foodinfo = pd.read_csv("pandas_study.csv", encoding = "utf-8")
2、查看前N条、后N条信息
foodinfo.head(N)
foodinfo.tail(N)
3、查看数据框的格式,是DataFrame还是ndarray
print(type(foodinfo))
# 结果:<class 'pandas.core.frame.DataFrame'>
4、查看有哪些列
foodinfo.columns
5、查看有几行几列
foodinfo.shape
6、打印某一行、某几行数据
foodinfo.loc[0]
foodinfo.loc[0:2]
foodinfo.loc[[2, 5, 10]] #注意里面是一个数组
7、打印某一列、某几列数据
foodinfo["dti"]
foodinfo[["int_rate", "dti"]] #注意里面是一个数组
# 或者:
columns = ["int_rate", "dti"]
foodinfo[columns]
8、打印所有列的数据类型
foodinfo.dtypes
9、对列的一些相关操作
col_columns = foodinfo.columns.tolist()
new_columus = [] for c in col_columns:
if c.endswith("s"):
new_columus.append(c)
print(c) foodinfo[new_columus]
10、加减乘除:将每行都乘以100(加 减 乘 除 一样)
foodinfo[["int_rate", "dti"]] * 100
11、增加一列
new_col = foodinfo["int_rate"] * 100
foodinfo["new_col"]= new_col
12、列之间的运算
foodinfo["dti"] * foodinfo["int_rate"]
13、查看列的最大值、最小值、平均值
foodinfo["int_rate"].max()
foodinfo["int_rate"].min()
foodinfo["int_rate"].mean()
14、按某个字段排序 - 升序
# inplace是否新建一个dataframe,True不需要
foodinfo.sort_values("int_rate_one", inplace = True) # 按某个字段排序 - 降序
foodinfo.sort_values("int_rate_one", inplace = True, ascending = False)
15、查看数据框的一些属性:最大、最小、均值、四分位数等
foodinfo.describe()
16、空值相关的操作
pin = foodinfo["pin"]
pin_isnull = pd.isnull(pin) # 查看所有空值
pin_isnull_list = foodinfo[pin_isnull] # 找出所有为空值的行
len(pin_isnull_list) # 空值的个数
17、缺失值相关操作
# 简单的处理办法就是过滤掉null值
books = foodinfo["life_cycle_books"]
book_isnull = pd.isnull(books)
book_list_isnull = foodinfo["life_cycle_books"][book_isnull == False]
mean = sum(book_list_isnull) / len(book_list_isnull) # 计算平均值
18、根据条件打印某列数据
foodinfo[foodinfo["life_cycle_books"] == 1]
19、数据透视表
import numpy as np
# index:要透视的列
# values:要比较的关系列
# aggfunc:具体的关系,默认值:np.mean
data_foodinfo = foodinfo.pivot_table(index = ["life_cycle_books", "potential_value_books"], values = "risk_level", aggfunc = np.mean)
print(data_foodinfo)
20、删除缺失值
# 所有行
na_foodinfo = foodinfo.dropna(axis = 1)
# 可以指定列
na_foodinfo = foodinfo.dropna(axis = 0, subset = ["life_cycle_books", "potential_value_books"])
21、自由取数据 如:取80行 life_cycle_books列
foodinfo.loc[80, "life_cycle_books"]
22、重新排索引
foodinfo.reset_index(drop = True)
23、自定义函数:返回空值个数
def count_null_columns(column):
column_null = pd.isnull(column)
list_null = column[column_null]
count_null = len(list_null)
return count_null
foodinfo.apply(count_null_columns)
24、Series
# pandas 三种数据结构
# Series
# DataFrame
# Panel
from pandas import Series
25、Series显示某一列数据
series_name = taitan["Name"]
series_name.values
26、定位某行某列
series_name = taitan["Name"]
series_age = taitan["Age"]
series_custom = Series(series_age.values, index = series_name)
series_custom[["Ahlin, Mrs. Johan (Johanna Persdotter Larsson)", "Asplund, Mrs. Carl Oscar (Selma Augusta Emilia Johansson)"]]
# 说明:series_custom[""] 按列取 series_custom[[""]] 按行取
27、取5-10行数据,和上面一样:
series_custom[5: 10]
28、index变换
old_index = series_custom.index.tolist()
sort_index = sorted(old_index)
new_index = series_custom.reindex(sort_index)
print(new_index)
29、Series按索引和值排序的函数
sc1 = series_custom.sort_index()
print(sc1)
sc2 = series_custom.sort_values()
print(sc2)
30、Series 过滤
series_custom > 0.5
series_custom[series_custom > 0.5]
series_custom[(series_custom > 0.5) & (series_custom < 0.9)]
# 注:&、| 都是单符号
31、DataFrame
# Series是一行数据,DataFrame是多行数据
# DataFrame 可以看成由多个 Series 组成的
df = pd.read_csv("titanic_train.csv")
32、DataFrame的索引变换
# drop 是否新创建一个DF,True否 False是(表示还要保留Name这一列,否则一会无法进行计算)
df_name = df.set_index("Name", drop = False)
33、DataFrame查看某一类型的数据
types = df_name.dtypes
float_columns = types[types.values == "float64"].index
df_name[float_columns]
34、DataFrame求方差
float_df = df_name[float_columns]
float_df.apply(lambda x: np.std(x))
Python的Pandas库简述的更多相关文章
- Python之Pandas库常用函数大全(含注释)
前言:本博文摘抄自中国慕课大学上的课程<Python数据分析与展示>,推荐刚入门的同学去学习,这是非常好的入门视频. 继续一个新的库,Pandas库.Pandas库围绕Series类型和D ...
- Python数据分析Pandas库方法简介
Pandas 入门 Pandas简介 背景:pandas是一个Python包,提供快速,灵活和富有表现力的数据结构,旨在使“关系”或“标记”数据的使用既简单又直观.它旨在成为在Python中进行实际, ...
- Python的Numpy库简述
numpy 是 python 的科学计算库import numpy as np 1.使用numpy读取txt文件 # dtype = "str":指定数据格式 # delimite ...
- Python的Matplotlib库简述
Matplotlib 库是 python 的数据可视化库import matplotlib.pyplot as plt 1.字符串转化为日期 unrate = pd.read_csv("un ...
- Python之Pandas库学习(二):数据读写
1. I/O API工具 读取函数 写入函数 read_csv to_csv read_excel to_excel read_hdf to_hdf read_sql to_sql read_json ...
- Python之Pandas库学习(一):简介
官方文档 1. 安装Pandas windos下cmd:pip install pandas 导入pandas包:import pandas as pd 2. Series对象 带索引的一维数组 创建 ...
- python的pandas库学习笔记
导入: import pandas as pd from pandas import Series,DataFrame 1.两个主要数据结构:Series和DataFrame (1)Series是一种 ...
- Python数据分析Pandas库之熊猫(10分钟二)
pandas 10分钟教程(二) 重点发法 分组 groupby('列名') groupby(['列名1','列名2',.........]) 分组的步骤 (Splitting) 按照一些规则将数据分 ...
- Python数据分析Pandas库之熊猫(10分钟一)
pandas熊猫10分钟教程 排序 df.sort_index(axis=0/1,ascending=False/True) df.sort_values(by='列名') import numpy ...
随机推荐
- Android最全开发资源(申明:来源于网络)
Android最全开发资源(申明:来源于网络) 地址:http://www.jianshu.com/p/0c36302e0ed0?ref=myread
- 手动安装vue-devtools
第一步:找到vue-devtools的github项目,并将其clone到本地. vue-devtools git clone https://github.com/vuejs/vue-devtool ...
- [No0000158]思维模型1-20
[No0000158]思维模型1-20.7z 思维模型No1|第一性原理 第一原理(又叫第一性原理)是个今年很火的概念,最早由亚里士多德提出,它相当于数学中的公理,即在每一个系统的探索中,存在第一原理 ...
- [No0000119]什么是柳比歇夫的时间事件记录法
上图是我过去一年来做的时间事件记录中的某几天的记录文字.从接触到这种方法以来,也就是2009年的7月31日到今天,我已经作了一年多时间的记录.那么什么是时间事件记录?很简单,就像那两幅图片上所展示的, ...
- 用mysql-connector操作MySQL数据库
首先是工具库的安装 pip install mysql-connector 连接数据库 #连接数据库 #常规连接方式 conn = mysql.connector.connect(user=', da ...
- [skill] vim 操作多个window
前言: 分辨率越来越高,屏幕越来越大,行最长80不变,屏幕利用空白越来越大. 开多个window吧! 开window的命令: 平行开一个window:split <//path/file> ...
- Python中生成器和迭代器的区别(代码在Python3.5下测试):
https://blog.csdn.net/u014745194/article/details/70176117 Python中生成器和迭代器的区别(代码在Python3.5下测试):Num01–& ...
- 《Redis 集群》
由于集群这章节内容较多,也比较重要,所以单独拉出来,做一个小章节. 1:如何搭建一个集群? - 环境为 Ubuntu16.04 - 这里我预计使用 9001 - 9006 端口,生成一个 6 台机器的 ...
- 如何获取Android系统APP的Package Name和Activity Name
有两种方式: 方式一.aapt.exe查看Package Name和入口Activity Name (1) 在安装路径android-sdk\platform-tools下查找aapt.exe: 如 ...
- 谈谈javascript数组排序方法sort()的使用,重点介绍参数使用及内部机制?
语法:arrayObject.sort(sortby) 参数sortby可选,规定排序顺序,必须是函数: 注:如果调用该方法时没有使用参数,将按字符编码的顺序进行排序,要实现这一点,首先应把数组的元素 ...