目录
导包:
import pandas #导入pandas包
print(pandas.__version__) #查看pandas版本
例:
import pandas as pd //使用别名pd
dataSet = {'brand': ["xiaomi", "huawei", "oppo"],
'price': [2888, 3888, 3118]
}//设置数据集
showDate=pd.DataFrame(dataSet)
print(showDate)//打印数据
数据结构
Series
Pandas Series可以存储一维任意数据类型的数据,类似于一维数组和表格中的一列。
由索引与列组成。
函数结构
pandas.Series( data, index, dtype, name, copy)
例:
import pandas as pd
arr=[1,3,5,7,9]
showArr=pd.Series(arr)
print(showArr)
也可以通过索引获取数据:
import pandas as pd
arr=[1,3,5,7,9]
showArr=pd.Series(arr)
print(showArr[2])
你也可以指定索引值:
import pandas as pd
arr=["父亲","母亲","儿子","女儿"]
showArr=pd.Series(arr,index=["father","mother","son","daughter"])
print(showArr)
#通过索引获取数据
print(showArr["son"])
也可以使用 key/value 对象,类似字典来创建 Series:
import pandas as pd
data={648:"元神",888:"王者",8848:"碧蓝"}
show=pd.Series(data)
print(show)
print(show[648])
如果只需要一部分数据,只需指定数据的索引即可:
import pandas as pd
data={648:"元神",888:"王者",8848:"碧蓝"}
show=pd.Series(data,index=[648,8848])
print(show)
设置Series参数:
import pandas as pd
data={648:"元神",888:"王者",8848:"碧蓝"}
show=pd.Series(data,index=[648,8848],name="gameName")
print(show)
DataFrame
Pandas DataFrame 是一种二维数据结构,如二维数组或包含行和列的表格。它含有一组有序的列,每列可以是不同的值类型。DataFrame 既有行索引也有列索引,它可以被看做由 Series 组成的字典(共同用一个索引)。
函数结构:
pandas.DataFrame( data, index, columns, dtype, copy)
例:
import pandas as pd
data=[[1,'a'],[2,'b'],[3,'c']]
df=pd.DataFrame(data,columns=['num','word'])
print(df)
使用ndarrays创建,ndarray长度必须相同,如果传递了index,索引长度应等于数组长度。没有传递索引,默认情况,索引将是range(n),n为数组长度:
import pandas as pd
data ={'num':[1,2,3],'word':['a','b','c']}
df=pd.DataFrame(data)
print(df)
使用字典创建:
import pandas as pd
data=[{'a':1,'b':2},{'a':3,'b':4,'c':5}]
df=pd.DataFrame(data)
print(df)
pandas可以使用loc属性返回指定行的数据,若未设置索引,第一行索引为0,以此类推:
import pandas as pd
data = {
"num": [2, 3, 4],
"pow": [4, 9, 16]
}
df = pd.DataFrame(data)
print(df)
# 返回第一行
print(df.loc[0])
# 返回第二行
print(df.loc[1])
也可以返回多行数据:
import pandas as pd
data = {
"num": [2, 3, 4],
"pow": [4, 9, 16]
}
df = pd.DataFrame(data)
print(df)
print("-----------")
print(df.loc[[0,1]])
设置索引值返回:
import pandas as pd
data = {
"num": [2, 3, 4],
"pow": [4, 9, 16]
}
df = pd.DataFrame(data,index=['a','b','c'])
print(df)
print("-----------")
print(df.loc['a'])
CSV
定义:
Pandas 可以很方便的处理 CSV 文件:
import pandas as pd
df=pd.read_csv('test.csv')
print(df.to_string())
import pandas as pd
df=pd.read_csv('test.csv')
print(df)
不使用to_string()函数,则输出结果为数据的前面 5 行和末尾 5 行,中间部分以 ... 代替
to_csv()将 DataFrame 存储为 csv 文件:
import pandas as pd
nm= ["zs", "ls", "ww", "zl"]
sx = ["man", "woman", "man", "woman"]
ag = [18,28 ,35 ,21 ]
# 字典
dict = {'name': nm, 'sex': sx, 'age': ag}
df = pd.DataFrame(dict)
# 保存 dataframe
df.to_csv('info.csv')
Head
head(n) 方法用于读取前面的 n 行,如果不填参数 n ,默认返回 5 行:
import pandas as pd
df = pd.read_csv('test.csv')
#不填参数默认五行
print(df.head())
#显示3行
print("--------")
print(df.head(3))
Tail
tail(n)方法用于读取尾部的 n 行,如果不填参数 n ,默认返回 5 行,空行各个字段的值为NaN:
import pandas as pd
df = pd.read_csv('test.csv')
#不填参数默认五行
print(df.tail())
#显示3行
print("--------")
print(df.tail(3))
Info
返回表格的一些基本信息
import pandas as pd
df = pd.read_csv('test.csv')
print(df.info())