data.csv #新的数据格式
id, name, class, score
1, jin, 高一一班, 100
2, li, 高一二班, 98
pandas安装
pip install pandas(源安装太慢,网速不好易失败) 使用下面豆瓣的源安装(速度快): pip install pandas -i http://pypi.douban.com/simple --trusted-host pypi.douban.com
import pandas as pd
df = pd.read_csv('C:/Users/Administrator/data.csv') #修改为自己存储数据的路径
# abs_path = 'C:/Users/Administrator/成绩表.csv'
# df = pd.read_csv('abs_path')
df
id | name | clss | score | |
---|---|---|---|---|
0 | 1 | jin | 高一一班 | 100 |
1 | 2 | li | 高一二班 | 200 |
df.head() # 默认取前5行
df.head(2) # 取前2行
In [1]: type(df)
Out[1]: pandas.core.frame.DataFrame
DataFrame(pandas核心)
# 列名
In [2]:print(df.columns)
# 索引
print(df.index) Out[2]:Index(['id', 'name', 'clss', 'score'], dtype='object') RangeIndex(start=0, stop=2, step=1)
In [3]: df.loc[0]
Out[3]:
id 1 name jin clss 高一一班 score 100 Name: 0, dtype: object
In [4]: df = pd.read_csv('C:/Users/Administrator/成绩表.csv')
Out[4]:df
序号 | 姓名 | 性别 | 语文 | 数学 | 英语 | 物理 | 化学 | 生物 | |
---|---|---|---|---|---|---|---|---|---|
0 | 1 | jin | 女 | 95 | 66 | 85 | 75 | 79 | 89 |
1 | 2 | li | 男 | 88 | 87 | 68 | 92 | 82 | 63 |
2 | 3 | yue | 女 | 90 | 76 | 87 | 78 | 73 | 86 |
3 | 4 | wang | 女 | 82 | 97 | 78 | 96 | 92 | 53 |
4 | 5 | mu | 女 | 55 | 86 | 95 | 72 | 76 | 79 |
5 | 6 | chen | 男 | 78 | 69 | 58 | 52 | 92 | 62 |
In [5]: a = np.array(range(10))
a>3
Out[5]:array([False, False, False, False, True, True, True, True, True, True])
In [6]: print(df.columns)
# 删选数学成绩>80
type(df.数学>80)
Out[6]:Index(['序号', '姓名', '性别', '语文', '数学', '英语', '物理', '化学', '生物'], dtype='object')
pandas.core.series.Series
In [7]: df[df.数学>80]
Out[7]:
序号 | 姓名 | 性别 | 语文 | 数学 | 英语 | 物理 | 化学 | 生物 | |
---|---|---|---|---|---|---|---|---|---|
1 | 2 | li | 男 | 88 | 87 | 68 | 92 | 82 | 63 |
3 | 4 | wang | 女 | 82 | 97 | 78 | 96 | 92 | 53 |
4 | 5 | mu | 女 | 55 | 86 | 95 | 72 | 76 | 79 |
复杂删选
In [8]:df[(df.语文>70) & (df.数学>70) & (df.英语>70)]
Out[8]:
序号 | 姓名 | 性别 | 语文 | 数学 | 英语 | 物理 | 化学 | 生物 | |
---|---|---|---|---|---|---|---|---|---|
2 | 3 | yue | 女 | 90 | 76 | 87 | 78 | 73 | 86 |
3 | 4 | wang | 女 | 82 | 97 | 78 | 96 | 92 | 53 |