涉及的几个类
pandas.core.frame.DataFrame:表示二维数据,比如:表格数据
pandas.core.series.Series:表示一维数据,比如:一行数据,或一列数据
取行用法
DataFrame[row_slice]
DataFrame.loc[rowName | rowName_slice | rowName_list]
DataFrame.iloc[row | row_slice | row_list]
取一行:
df[1], df.loc[1], df.iloc[1]
取连续多行:
df[0:3], df.iloc[0:3], df.loc[0:2]
取指定多行:
df.loc[[0, 2, 5]], df.iloc[[0, 2, 5]]
取所有行:
df, df.loc[:], df.iloc[:]
取列用法
DataFrame[colName | colName_list]
DataFrame.loc[colName | colName_slice | colName_list]
DataFrame.iloc[col | col_slice | col_list]
取一列:
df["id"], df.loc[:, "id"], df.iloc[:, 0]
取连续多列:
df.loc[:, "lv":"def"], df.iloc[:, 1:5]
取指定多列:
df[["lv", "move"]], df.loc[:, ["lv", "move"]], df.iloc[:, [1, 5]]
取所有列:
上面取行的用法都是包含所有列的
例子
用到的数据:data.xlsx数据
读取文件
import pandas as pd df = pd.read_excel("./data.xlsx", index_col=None) # index_col表示哪一列作为索引列, 默认是额外加一个列, 用行号作为索引 print(type(df)) # <class 'pandas.core.frame.DataFrame'>, 表格类型数据
取一行
row = df.loc[1] # 第2行数据,所有列 print(type(row)) # <class 'pandas.core.series.Series'> print(row) row = df.loc[1]
print(row) row = df.iloc[1]
print(row)
取连续多行
rows = df[0:3] # 第1至3行, 所有列 print(type(rows)) # <class 'pandas.core.frame.DataFrame'> print(rows) rows = df.iloc[0:3] print(rows) rows = df.loc[0:2] # 因为这里是loc[rowName_slice], 所以后面用的是2 print(rows)
取指定行
rows = df.loc[[0, 2, 5]] print(type(rows)) print(rows) rows = df.iloc[[0, 2, 5]] print(rows)
取一列
col_name = df.columns[0] rows = df[col_name] # 所有行数据, 只需要第1列(id) print(type(rows)) # <class 'pandas.core.series.Series'> print(rows) col_name = "id" rows = df[col_name] # 所有行数据, 只需要id列 print(rows) rows = df.loc[:, "id"] print(rows) rows = df.iloc[:, 0] print(rows)
取连续多列
rows = df.loc[:, "lv":"def"] print(type(rows)) print(rows) rows = df.iloc[:, 1:5] print(rows)
取指定列
rows = df[["lv", "move"]] print(type(rows)) print(rows) rows = df.loc[:, ["lv", "move"]] print(rows) rows = df.iloc[:, [1, 5]] print(rows)
取开头,结尾
head_rows = df.head(2) # 开头2行数据 print(type(head_rows)) # <class 'pandas.core.frame.DataFrame'> print(head_rows) tail_rows = df.tail(2) # 结尾2行数据 print(type(tail_rows)) # <class 'pandas.core.frame.DataFrame'> print(tail_rows)
参考
Pandas中iloc、loc、ix、直接索引的用法和区别 (zhihu.com)
标签:loc,rows,df,使用,print,iloc,数据,pandas,row From: https://www.cnblogs.com/sailJs/p/17706576.html