python没有系统学过,之前只是用过MATLAB,因为python基础不牢,所以很多时候对于数据不清楚怎么处理,这里,将之前碰到的数据给罗列一下,方便自己记忆。(基本上一定有说的不对的地方,敬请大家批评指正)
1、list,很常见,索引也比较简单,list[i],list[1,1],list[:,:-1]
2、narray,索引方式与list一致
3、DataFrame,索引方式datasets.iloc[col]。loc:通过选取行(列)标签索引数据; iloc:通过选取行(列)位置编号索引数据 ;ix:都可以//col是位置信息
4、torch,tensor,numpy等等,索引方式与array很像,但是有时候需要tensor与numpy互换。data.numpy();t.from_numpy(data)。虽然tensor和numpy可以互换,但是当tensor是Variable时,Variable不能直接转换成numpy,因为Variable要计算梯度,所以要用a.detach().numpy(),实现的功能就是先复制a到另一个存储空间,然后再变成numpy,detach()的作用使操作不影响a本身。
5、Variable的属性有三个,data:Variable里面Tensor的数值;
grad:Variable反向传播的梯度;grad_fn:得到Variable的操作
06-08