pandas 的使用
pandas 是基于NumPy 的一种工具,是python的一个数据分析包,主要用于数据的分析和处理,其主要处理的类型为:
Series:一维数组,与Numpy中的一维array类似。二者与Python基本的数据结构List也很相近。Series如今能保存不同种数据类型,字符串、boolean值、数字等都能保存在Series中。
Time- Series:以时间为索引的Series。
DataFrame:二维的表格型数据结构。可以将DataFrame理解为Series的容器。
Panel :三维的数组,可以理解为DataFrame的容器。
1、创建series,会自动创建一个整数索引,pandas 中的空表示为 nan
import pandas as pd import numpy as np s = pd.Series([1,2,np.nan,3]) print(s) >>0 1.0 1 2.0 2 NaN 3 3.0
2、创建DataFrame
2.1导入数据:
ex = pd.read_excel(file_path, sheet_name="name") df = pd.DataFrame(ex)
2.2 获取指定数据的索引:(注意得到的索引排除了首行)
time name leval score 05/01/2019 LX 13 10 05/02/2019 SX 1 100 05/03/2019 SC 14 9 05/04/2019 ZF 13 10 05/05/2019 ST 1 100 05/06/2019 YT 7 70 05/07/2019 GJ 2 20 05/08/2019 TR 1 100 indexs = df[df['name'].isin([“SC”])].index.tolist()
# 或者
indexs= df[df.name == "SC"].index.tolist()
>>[2]
2.3 删除指定数据为空的行,并重置索引
df = df.replace(np.nan, '', regex=True) df = df[df["name"] != ""] df = df.reset_index(drop=True) # 重置索引
2.4 获取某行某列的值
loc 通过标签提取数据,里面可以包含函数、判断语句等,(如取"name"为"SC"的行)
df.loc[df["name"]=="SC",score"] df.loc[1, "score"]
iloc函数:通过行号来取行数据
df.iloc[[0,1],[0,1]]
更多内容可以参考:pandas教程