Pandas基础
一、文件的读取和写入
import pandas as pd
import numpy as np
# 加上这两行可以一次性输出多个变量而不用print
from IPython.core.interactiveshell import InteractiveShell
InteractiveShell.ast_node_interactivity = "all"
# 查看版本
pd.__version__
pd.set_option('display.max_columns', None)
读取
Pandas常用的有以下三种文件:
csv文件
txt文件
xls/xlsx文件
读取文件时的注意事项:
文件路径是否正确,相对路径 ./data
编码方式 分隔符
列名
将结果输出到csx、txt、xls、xlsx文件中
df.to_csv('./new table.csv')
df.to_excel('./new table.xlsx')
#读取csv文件
df = pd.read_csv('/Users/andrew/Desktop/doctor (3)/test_X.csv')
df.head()
#读取txt文件,直接读取可能会出现数据都挤在一列上
df_txt = pd.read_table('./data./table.txt')
#df_txt = pd.read_table('./data./table.csv', sep=",")
df_txt.head()
#读取xls/xlsx文件
df_excel = pd.read_excel('./data./table.xlsx')
df_excel.head()
二、基本数据结构
Pandas处理的基本数据结构有 Series 和 DataFrame
(一)Series
1、创建
Series常见属性有 values, index, name, dtype
s = pd.Series(np.random.randn(5), index=['a','b','c','d','e'],
name='this is a series', dtype='float64')
s
a 1.310573
b 1.034550
c -0.302572
d 0.479497
e -0.354445
Name: this is a series, dtype: float64
- 访问Series属性
s.values, s.index, s.name, s.dtype
(array([ 1.31057308, 1.03455003, -0.30257152, 0.47949729, -0.35444488]),
Index(['a', 'b', 'c', 'd', 'e'], dtype='object'),
'this is a series',
dtype('float64'))
- 取出某元素
通过索引取数或通过位置取数
s['a'], s[2:], s[1]
(1.3105730799270385,
c -0.302572
d 0.479497
e -0.354445
Name: this is a series, dtype: float64,
1.0345500345055325)
4、调用方法
s.mean(), s.sum(), s.hist()
(0.43352080035931095,
2.1676040017965548,
<matplotlib.axes._subplots.AxesSubplot at 0x110213590>)
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fqO8IbIu-1587605514650)(output_19_1.png)]
(二)DataFrame
- 创建
DataFrame基本属性有 values、columns、index
df = pd.DataFrame({
'col1':list('abcde'), 'col2':range(5,10),
'col3':[1.3,2.5,3.6,4.6,5.8]}, index=list('一二三四五'))
df
col1 | col2 | col3 | |
---|---|---|---|
一 | a | 5 | 1.3 |
二 | b | 6 | 2.5 |
三 | c | 7 | 3.6 |
四 | d | 8 | 4.6 |
五 | e | 9 | 5.8 |
- 取一列/取一行<