pandas根据行列索引值得到具体数据 pandas包中用iloc函数索引具体数值

问题

只有行和列的值,直接data[i, j]无法访问到pandas读取的数据,如何访问?

解决

用iloc函数。

可直接跳到索引数据查看具体代码。

创建数据

注意创建文件夹、确定文件路径、创建文件、修改文件内容。

import os

os.makedirs(os.path.join('..', 'data'), exist_ok=True)
data_file = os.path.join('..', 'data', 'house_tiny.csv')
with open(data_file, 'w') as f:
    f.write('NumRooms,Alley,Price\n')
    f.write('NA,Pave,127500\n')
    f.write("2,NA,106000\n")
    f.write("4,NA,178100\n")
    f.write("NA,NA,140000\n")

查看数据

导入pandas,用read_csv函数读取数据并打印出来

import pandas as pd
data = pd.read_csv(data_file)
print(data)

结果如下:

   NumRooms Alley   Price
0       NaN  Pave  127500
1       2.0   NaN  106000
2       4.0   NaN  178100
3       NaN   NaN  140000

索引数据

比如访问位置为[0,1]和[3,2]的数据,代码如下:

a = data.iloc[0, 1]
b = data.iloc[3, 2]
print('data.iloc[0, 1] ', a)
print('data.iloc[3, 2] ', b)

结果如下:

data.iloc[0, 1]  Pave
data.iloc[3, 2]  140000

总结

用pandas包中的read_csv函数读取出数据data后,可用iloc函数,以data.iloc[行位置, 列位置]的方式,直接索引具体值。

你可能感兴趣的:(pandas,数据分析,数据挖掘)