首页 > 代码库 > 【机器学习】NumPy、Panda相关数据结构学习
【机器学习】NumPy、Panda相关数据结构学习
NumPy学习
NumPy重要的一个特点:是一个N维数组对象。提供了shape(指明行数、列数)和dtype(数据类型)
初始化
1 data1 = [3,5] 2 3 arr1 = np.array(data1) 4 arr1 5 输出:array([3, 5])
注意,如果有切片来自于该数据,改变切片,也会改变原来的数据。
Panda
主要由Series和DataFrame组成。
Series
1,Series包括了index和values,其中values数据包括各种NumPy数据类型。与NumPy相比,可以通过索引的方式选取Series的单个或一组值。
2,Series可以看出是一个定长的有序字典,也可以直接通过map来创建Series.
data = http://www.mamicode.com/{‘o‘:1,‘h‘:2} || obj = Series(data)
3,可用isnull()、notnull()来检测缺失的数据;
4,一个重要的功能:两个索引可能不同的Series相加时,可以自动对齐不同索引的数据。空的地方,会自动以Nan补齐。
1 输入 2 obj=pd.Series([4,6,7]) 3 输出: 4 5 >>> obj 6 0 4 7 1 6 8 2 7 9 dtype: int64
DataFrame
DataFrame是一个表格型的数据结构,既有行索引,也有列索引。
1, DataFrame初始化: 直接传入一个由等长列表或NumPy数组组成的字典:
1 data = http://www.mamicode.com/{‘state‘:[‘ohio], ‘year‘:[2000]} 2 frame=pd.DataFrame(np.arange(12.).reshape((4,3)), columns=list(‘bde‘), index=[‘Utah‘,‘Ohio‘,‘Texas‘,‘Oregon‘]) 3 4 输出: 5 6 >>> frame 7 b d e 8 Utah 0.0 1.0 2.0 9 Ohio 3.0 4.0 5.0 10 Texas 6.0 7.0 8.0 11 Oregon 9.0 10.0 11.0 12 13 data = http://www.mamicode.com/DataFrame(np.arange(16).reshape(4,4),index=list(‘abcd‘),columns=list(‘wxyz‘))
简单总结
data[‘w‘] #选择表格中的‘w‘列,使用类字典属性,返回的是Series类型
data.w #选择表格中的‘w‘列,使用点属性,返回的是Series类型
data[[‘w‘]] #选择表格中的‘w‘列,返回的是DataFrame属性
data[[‘w‘,‘z‘]] #选择表格中的‘w‘、‘z‘列
data[0:2] #返回第1行到第2行的所有行,前闭后开,包括前不包括后
data[1:2] #返回第2行,从0计,返回的是单行,通过有前后值的索引形式,
#如果采用data[1]则报错
df[]只能进行行选择,或列选择,不能同时进行列选择,列选择只能是列名。
dataframe.drop([columns]) 剔除某一列
【机器学习】NumPy、Panda相关数据结构学习