郑州网站建设e00,牛仔网站的建设风格,百度推广交了钱不给做网站,二级域名查询网站一、理解DataFrame
他是一个表格结构#xff1a;DataFrame 是一个表格型的数据结构
他是有序的#xff0c;不同值类型#xff1a;它含有一组有序的列#xff0c;每列可以是不同的值类型#xff08;数值、字符串、布尔型值#xff09;。
他可以被看做一个由series组成的…一、理解DataFrame
他是一个表格结构DataFrame 是一个表格型的数据结构
他是有序的不同值类型它含有一组有序的列每列可以是不同的值类型数值、字符串、布尔型值。
他可以被看做一个由series组成的字典DataFrame 既有行索引也有列索引它可以被看做由 Series 组成的字典共同用一个索引。
他对应二维数组
Pandas DataFrame 是一个二维的数组结构类似二维数组。
二、参数理解
pandas.DataFrame( data, index, columns, dtype, copy)data一组数据(ndarray、series, map, lists, dict 等类型)。index索引值或者可以称为行标签。columns列标签默认为 RangeIndex (0, 1, 2, …, n) 。dtype数据类型。copy拷贝数据默认为 False。 三、对象创建方式
使用列表创建DataFram
import pandas as pddata [[Google,10],[Runoob,12],[Wiki,13]]df pd.DataFrame(data,columns[Site,Age],dtypefloat)print(df)
通过官场以上代码我们可以发现
1、二维数组最内层是一行的数据
2、列名在使用DataFrame()函数时通过columns参数进行了指定参数形式为列表。其中dtype还指定了float类型。
运行结果如下 在创建时并没有指定index所以索引是从0开始的。
使用ndarrys创建DataFram
import pandas as pddata {Site:[Google, Runoob, Wiki], Age:[10, 12, 13]}df pd.DataFrame(data)print (df)
这里ndarrys是numpy里的暂理解为多维数组。
这里的多维数组为字典的value是一个列表。
从代码来看这种多维数组是DataFrame函数的标准入参之一此时多维数组或者说字典的keys就是列名每个子序列对应一个列的数据。
运行如下 以下为一个多个字典构成的列表数据生成DataFrame的案例
这里的字典是作为列表的一个元素
import pandas as pddata [{a: 1, b: 2},{a: 5, b: 10, c: 20}]df pd.DataFrame(data)print (df)从上述可知这种结构数据在生成DataFrame时列表内部字典的keys会成为表格的列多个字典代表多行数据。
运行如下 a b c
0 1 2 NaN
1 5 10 20.0
pandas可以使用 loc 属性返回指定行的数据如果没有设置索引第一行索引为 0第二行索引为 1以此类推
import pandas as pddata {calories: [420, 380, 390],duration: [50, 40, 45]
}# 数据载入到 DataFrame 对象
df pd.DataFrame(data)# 返回第一行
print(df.loc[0])
# 返回第二行
print(df.loc[1])
需要注意的是这里loc[索引]是返回的行数据。
返回指定多行时可以使用df.loc[0,1],形如此类。
DataFrame生成时也可以指定索引值以下是个小案例
import pandas as pddata {calories: [420, 380, 390],duration: [50, 40, 45]
}df pd.DataFrame(data, index [day1, day2, day3])print(df) 对这种指定了索引的DataFrame我们依然可以使用loc[索引名]来获取其值。
如下
import pandas as pddata {calories: [420, 380, 390],duration: [50, 40, 45]
}df pd.DataFrame(data, index [day1, day2, day3])# 指定索引
print(df.loc[day2])
运行如下
calories 380
duration 40
Name: day2, dtype: int64