pandas基础学习
库的导入
函数 | 说明 |
---|---|
df | 任意的pandas DataFrame(数据框)对象 |
s | 任意的pandas Series(数组)对象 |
pandas和numpy是用Python做数据分析最基础且最核心的库
import pandas as pd # 导入pandas库并简写为pd
import numpy as np # 导入numpy库并简写为np
数据的导入
函数 | 说明 |
---|---|
pd.read_csv(filename) | 导入csv格式文件中的数据 |
pd.read_table(filename) | 导入有分隔符的文本 (如TSV) 中的数据 |
pd.read_excel(filename) | 导入Excel格式文件中的数据 |
pd.read_sql(query, connection_object) | 导入SQL数据表/数据库中的数据 |
pd.read_json(json_string) | 导入JSON格式的字符,URL地址或者文件中的数据 |
pd.read_html(url) | 导入经过解析的URL地址中包含的数据框 (DataFrame) 数据 |
pd.read_clipboard() | 导入系统粘贴板里面的数据 |
pd.DataFrame(dict) | 导入Python字典 (dict) 里面的数据,其中key是数据框的表头,value是数据框的内容。 |
数据的导出
函数 | 说明 |
---|---|
df.to_csv(filename) | 将数据框 (DataFrame)中的数据导入csv格式的文件中 |
df.to_excel(filename) | 将数据框 (DataFrame)中的数据导入Excel格式的文件中 |
df.to_sql(table_name,connection_object) | 将数据框 (DataFrame)中的数据导入SQL数据表/数据库中 |
df.to_json(filename) | 将数据框 (DataFrame)中的数据导入JSON格式的文件中 |
创建对象
创建一个5列10行的由随机浮点数组成的数据框 DataFrame
pd.DataFrame(np.random.rand(10,5))
从一个可迭代的对象 my_list 中创建一个数据组
my_list = ['Kesci',100,'欢迎来到科赛网']
pd.Series(my_list)
'''
0 Kesci
1 100
2 欢迎来到科赛网
dtype: object
'''
添加一个日期索引 index
df = pd.DataFrame(np.random.rand(10,5))
df.index = pd.date_range('2017/1/1', periods=df.shape[0])
df
数据的查看与检查
查看数据框的前n行
df = pd.DataFrame(np.random.rand(10,5))
df.head(3)
查看数据框的最后n行
df = pd.DataFrame(np.random.rand(10,5))
df.tail(3)
查看数据框的行数与列数
df = pd.DataFrame(np.random.rand(10,5))
df.shape
查看数据框 (DataFrame) 的索引、数据类型及内存信息
df = pd.DataFrame(np.random.rand(10,5))
df.info()
'''
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 10 entries, 0 to 9
Data columns (total 5 columns):
0 10 non-null float64
1 10 non-null float64
2 10 non-null float64
3 10 non-null float64
4 10 non-null float64
dtypes: float64(5)
memory usage: 480.0 bytes
'''
对于数据类型为数值型的列,查询其描述性统计的内容
df.describe()
查询每个独特数据值出现次数统计
s = pd.Series([1,2,3,3,4,np.nan,5,5,5,6,7])
s.value_counts(dropna=False)
'''
5.0 3
3.0 2
7.0 1
6.0 1
NaN 1
4.0 1
2.0 1
1.0 1
dtype: int64
'''
查