pandas入门①

简介: 本指南直接来自pandas官方网站上的10分钟pandas指南。 我将它改写以使代码更易于访问。 本指南适用于之前未使用pandas的初学者。使用如下缩写:df:任意的Pandas DataFrame对象s:任意的Pandas Series对象...

本指南直接来自pandas官方网站上的10分钟pandas指南。 我将它改写以使代码更易于访问。 本指南适用于之前未使用pandas的初学者。

使用如下缩写:
df:任意的Pandas DataFrame对象
s:任意的Pandas Series对象

创建数据

# -*- coding: utf-8 -*-
"""
Created on Tue Aug 14 14:12:39 2018

@author: 夜神moon
"""
 # In[*]
 #加载相关包
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt

  • 创建对象
 # In[*]
 s = pd.Series([1,3,5,np.nan,6,8])

s = pd.Series([1,3,5,np.nan,6,8])
s
Out[4]:
0 1.0
1 3.0
2 5.0
3 NaN
4 6.0
5 8.0
dtype: float64

  • 通过传递一个numpy array,时间索引以及列标签来创建一个DataFrame:

dates = pd.date_range('20141101', periods=6)
dates
df = pd.DataFrame(np.random.randn(6,4), 
                   index=dates,columns=['one','two','three','four'])
df
Out[5]: 
                 one       two     three      four
2014-11-01  2.220859  0.303361  1.594748 -1.381258
2014-11-02 -0.712405 -1.659302  0.050692  1.258252
2014-11-03  0.375293  0.884031  0.439022  0.703665
2014-11-04  0.787441 -0.413331 -2.767427 -0.763200
2014-11-05 -1.523144  0.030411  0.916363 -0.808864
2014-11-06 -0.884664 -0.188278 -0.307767 -0.054792
  • 通过传递一个能够被转换成类似序列结构的字典对象来创建一个DataFrame:
df2 = pd.DataFrame({ 'A' : 1.,
                     'B' : pd.Timestamp('20130102'),
                     'C' : pd.Series(1,index=list(range(4)),dtype='float32'),
                     'D' : np.array([3] * 4,dtype='int32'),
                     'E' : pd.Categorical(["test","train","test","train"])})

df2
  • 常用的导入数据函数
导入数据

pd.read_csv(filename):从CSV文件导入数据
pd.read_table(filename):从限定分隔符的文本文件导入数据
pd.read_excel(filename):从Excel文件导入数据
pd.read_sql(query, connection_object):从SQL表/库导入数据
pd.read_json(json_string):从JSON格式的字符串导入数据
pd.read_html(url):解析URL、字符串或者HTML文件,抽取其中的tables表格
pd.read_clipboard():从你的粘贴板获取内容,并传给read_table()
pd.DataFrame(dict):从字典对象导入数据,Key是列名,Value是数据
  • 常用的查看、检查数据函数

df.head(n):查看DataFrame对象的前n行
df.tail(n):查看DataFrame对象的最后n行
df.index  查看行名
df.columns  查看列名
df.values  查看矩阵
df.shape():查看行数和列数
df.info():查看索引、数据类型和内存信息
df.describe():查看数值型列的汇总统计
s.value_counts(dropna=False):查看Series对象的唯一值和计数
df.apply(pd.Series.value_counts):查看DataFrame对象中每一列的唯一值和计数

数据排序

df.sort_index(axis=1, ascending=False)  # 即按列名排序,交换列位置。
df.sort_values(by='B')  # 按照列B的值升序排序

数据选取

df[col]:根据列名,并以Series的形式返回列
df[[col1, col2]]:以DataFrame形式返回多列
s.iloc[0]:按位置选取数据
s.loc['index_one']:按索引选取数据
df.iloc[0,:]:返回第一行
df.iloc[0,0]:返回第一列的第一个元素
  • 查看第四行数据
df.loc[dates[3]]
Out[17]: 
one      0.787441
two     -0.413331
three   -2.767427
four    -0.763200
Name: 2014-11-04 00:00:00, dtype: float64
  • 通过标签来在多个轴上进行选择
df.loc[:,['A','B']]
#                    A         B
# 2013-01-01  0.469112 -0.282863
# 2013-01-02  1.212112 -0.173215
# 2013-01-03 -0.861849 -2.104569
# 2013-01-04  0.721555 -0.706771
# 2013-01-05 -0.424972  0.567020
# 2013-01-06 -0.673690  0.113648
  • 标签切片
df2.loc['1':'3',['A','B']]
Out[23]: 
     A          B
1  1.0 2013-01-02
2  1.0 2013-01-02
3  1.0 2013-01-02

数据统计

df.describe():查看数据值列的汇总统计
df.mean():返回所有列的均值
df.corr():返回列与列之间的相关系数
df.count():返回每一列中的非空值的个数
df.max():返回每一列的最大值
df.min():返回每一列的最小值
df.median():返回每一列的中位数
df.std():返回每一列的标准差
目录
相关文章
|
数据可视化 数据挖掘 C++
一文入门数分三剑客--Numpy、Pandas、Matplotlib
一文入门数分三剑客--Numpy、Pandas、Matplotlib
370 0
|
9月前
|
存储 数据挖掘 数据处理
Python Pandas入门:行与列快速上手与优化技巧
Pandas是Python中强大的数据分析库,广泛应用于数据科学和数据分析领域。本文为初学者介绍Pandas的基本操作,包括安装、创建DataFrame、行与列的操作及优化技巧。通过实例讲解如何选择、添加、删除行与列,并提供链式操作、向量化处理、索引优化等高效使用Pandas的建议,帮助用户在实际工作中更便捷地处理数据。
206 2
|
10月前
|
存储 大数据 数据处理
Pandas入门:安装与基本操作
Pandas 是一个强大的 Python 数据处理库,提供高效的数据结构和分析工具。本文从安装开始,介绍 Pandas 的基本操作,包括 `Series` 和 `DataFrame` 的创建、查看、选择、过滤、添加和删除数据等。同时,指出了一些常见的问题和易错点,帮助初学者快速上手。
444 2
|
11月前
|
数据采集 数据可视化 数据处理
Python数据科学:Pandas库入门与实践
Python数据科学:Pandas库入门与实践
|
索引 Python
pandas 入门
pandas 入门
243 0
pandas 入门
|
算法 数据挖掘 数据处理
豆瓣评分8.7!Python pandas创始人亲码的数据分析入门手册!
在众多解释型语言中,Python最大的特点是拥有一个巨大而活跃的科学计算社区。进入21世纪以来,在行业应用和学术研究中采用python进行科学计算的势头越来越猛。 近年来,由于Python有不断改良的库(主要是pandas),使其成为数据处理任务的一大代替方案,结合其在通用编程方面的强大实力,完全可以只使用Python这一种语言去构建以数据为中心的应用程序。 作为一个科学计算平台,Python的成功源于能够轻松的集成C、C++以及Fortran代码。大部分现代计算机环境都利用了一些Fortran和C库来是西安线性代数、优选、积分、快速傅里叶变换以及其他诸如此类的算法。
|
算法 数据挖掘 数据处理
豆瓣评分8.7!Python pandas创始人亲码的数据分析入门手册!
在众多解释型语言中,Python最大的特点是拥有一个巨大而活跃的科学计算社区。进入21世纪以来,在行业应用和学术研究中采用python进行科学计算的势头越来越猛。 近年来,由于Python有不断改良的库(主要是pandas),使其成为数据处理任务的一大代替方案,结合其在通用编程方面的强大实力,完全可以只使用Python这一种语言去构建以数据为中心的应用程序。 作为一个科学计算平台,Python的成功源于能够轻松的集成C、C++以及Fortran代码。大部分现代计算机环境都利用了一些Fortran和C库来是西安线性代数、优选、积分、快速傅里叶变换以及其他诸如此类的算法。
|
数据采集 机器学习/深度学习 数据挖掘
Pandas简易入门指南
在数据科学和数据分析的世界中,Pandas库以其强大的数据处理能力而闻名。作为一个基于Python的开源库,Pandas提供了快速、灵活和富有表现力的数据结构,旨在使数据处理变得简单和直观。无论是处理时间序列数据、统计数据分析,还是进行数据清洗和准备,Pandas都是数据科学家的首选工具之一。
235 4
|
索引 Python
【Pandas】- pandas入门
【Pandas】- pandas入门
|
数据采集 数据挖掘 数据处理
《Pandas 简易速速上手小册》第1章:Pandas入门(2024 最新版)
《Pandas 简易速速上手小册》第1章:Pandas入门(2024 最新版)
119 1