python在处理Excel表格中, 功能非常强大, 几乎可以说是为所欲为; 其中, 处理Excel表格中, 最常用的就是按条件提取出表格中的某些特征的内容; 对于的, 就要用到python的索引功能; 以下是要实操的案例数据中的一部分
CardCount | Type | TermNo | OperNo | Dept |
818 | 消费 | 49 | 235 | 第一食堂 |
814 | 消费 | 63 | 27 | 第二食堂 |
820 | 消费 | 63 | 27 | 第二食堂 |
211 | 消费 | 196 | 133 | 好利来食品店 |
209 | 消费 | 146 | 48 | 好利来食品店 |
210 | 消费 | 169 | 12 | 第三食堂 |
212 | 消费 | 169 | 12 | 第三食堂 |
213 | 消费 | 169 | 12 | 第三食堂 |
676 | 存款 | 202 | 143 | 财务处 |
673 | 消费 | 41 | 249 | 第四食堂 |
677 | 消费 | 41 | 249 | 第四食堂 |
672 | 消费 | 61 | 252 | 第四食堂 |
678 | 消费 | 61 | 252 | 第四食堂 |
679 | 消费 | 61 | 252 | 第四食堂 |
680 | 消费 | 175 | 247 | 第四食堂 |
674 | 消费 | 19 | 236 | 第一食堂 |
675 | 消费 | 49 | 235 | 第一食堂 |
782 | 消费 | 4 | 27 | 第二食堂 |
780 | 消费 | 59 | 27 | 第二食堂 |
784 | 消费 | 87 | 27 | 第二食堂 |
785 | 消费 | 186 | 27 | 第二食堂 |
781 | 消费 | 7 | 27 | 第二食堂 |
任务: 将Dept这一列中,提取出一,二食堂构成新的表格
import os import pandas as pd os.chdir(r"D:\") def duty2_1(): data2 = pd.read_csv("task1_1_2.csv") # 导入数据 # 取出'Dept'这一列 data2_Dept = data2['Dept'] # 查看'Dept'这一列分类情况 # 结果为有6个类别的食堂 print(data2_Dept.value_counts()) # 取出'Dept'这一列所有食堂的行,构建新的DF: data_canteen data_canteen = data2[(data2['Dept']=='第一食堂') | (data2['Dept']=='第二食堂')][['CardNo','Dept']] # (data2['Dept']=='第一食堂') 表示提取出Dept列中'第一食堂'所在的所有行 # (data2['Dept']=='第二食堂') 表示提取出Dept列中'第二食堂'所在的所有行 # ['CardNo','Dept']表示Dept取出这一列 # | 是逻辑符号: 或 print(data_canteen)
用法总结:df[(列满足的条件)逻辑符号(列满足的条件)逻辑符号()][]