1.1加载数据和获取行列数据
pd.read_csv(’…/data.csv’,sep=’\t’) #读取
print(data.shape) #获取行列数
print(df.colums) #获取列名
print(df.dtypes)#获取每列的类型
print(df.info()) #获取更多数据信息
data = df[‘a’] #获取列子集
data = df[[‘a’, ‘b’, ‘c’]] #查看多列
df.head() #显示前五行
df.tail() #显示最后5行
df.loc[0] #获取第一行 loc 基于索引行标签获取行子集(行名)
df.loc[-1] #获取最后一行会出错,不存在这样的标签
···
#准确获取最后一行:
#通过shape的第一个值获取行数
number_of_rows = df.shape[0]
#行数减去1即可得到最后一个索引值
last_row_index = number_of_rows - 1
#传入最后一行的索引获取最后一行
print(df.loc[last_row_index])
#也可以使用tail方法默认返回最后5行
df.tail(n=1) #返回最后一行
df.head(n=1) # 获取第一行
df.loc[0] #获取第一行
df.loc[[0.99,999]] #选取多行
df.iloc[1] #获取第2行 iloc 基于行索引获取行子集(行号)
df.iloc[-1] #获取最后一行
df.iloc[[0,99,999]] #传入一个整数列来获取多行
#获取行和列 loc和 iloc属性可用于获取列、行或者二者的子集。loc和iloc 的一般语法是使用带逗号的方括号。形式为df.loc[[行], [列]] 或 df.iloc[[行], [列]]
df.loc[:, [‘a’, ‘b’]] #冒号选取所有行,右边获取所有列子集 列不能传入整数集
df.iloc[:,[2,4,-1]] #iloc选取行和列 列只能传入整数集
#通过范围选择列子集
small_range = list(range(5))
subset = df.iloc[:, small_range]
#传入3-5的整数
small_range = list(range(3,6))
subset = df.iloc[:, small_range]
#获取0-6的偶数(不包含6)
small_range = list(range(0,6,2))
subset = df.iloc[:, small_range]
#使用切片语法获取前3列
subset = df.iloc[:, :3]
#获取第4和第6列
subset = df.iloc[:, 3:6]
#获取第1,第3和第5列
subset = df.iloc[:, 0:6:2]
#获取行和列的子集
print(df.loc[42, ‘a’])
df.iloc[42,0]
df.loc[42,0] #这样会报错
#获取多行和多列
#获取第1行,第100行和第1000行
#获取第1列,第4列和第6列
print(df.iloc[[0,99,999], [0,3,5]])
print(df.loc[10:13, [‘a’, ‘b’, ‘c’])
print(df.loc[[0,99,999], [‘a’, ‘b’, ‘c’]
#更改数值类型
df.astype(‘int32’).dtypes