目录
最少必要知识
选择某行或某列元素
有三种思路:
- 依据属性名
- 利用行号,或者列号
- 依据条件构建boolear variable
背景
import pandas as pd
import numpy as np
df = pd.DataFrame(data=np.random.randint(low=1,high=4,size=(2,3)), columns=["a","b","c"])
选择某列元素
caseI: 选择一列元素
得到的是一个series对象
依据属性名选择
acol = df['a'] ##选择a属性列
columnName = acol.name
依据下标选择
acol=df.iloc[:,0]
caseII: 选择多列元素
利用属性名
语法:multiCol = df[list]
abcol = df[["a","b"]] ##wayI: list
abcol = df.loc[:, ["a","b"]] ##wayII, 利用loc
利用下标
abcol = df.iloc[:, [0,1]] ##wayIII, 利用iloc
abcol = df.iloc[:, [0:1]] ##wayIV, 利用iloc
选择某行元素
caseI: 选择某行元素
核心思想:依据行号选择
r1 = df[0:1]
caseII: 选择 满足条件的哪些行
核心思路:先构建条件,得到boolean变量
stepI: 构建条件
condition1 = df["a"]==1
condition2 = df["b"]>=2
conditoon3 = condition1 & condition2
stepII:依据条件选择
subdf = df[condition1]
subdf = df[condition3]
参考资料
https://chrisalbon.com/python/data_wrangling/pandas_selecting_rows_on_conditions/