矩阵和行列的相互转换-ucinet简直救我狗命
张灵玉和夏禾镇楼。小师叔的角色歌好听到爆炸,超级喜欢了。
港真,我jio着《一人》是一部伟大的动漫,会一直经典下去。
-------------------------------------------一人之下-------------------------------------------
行列转换为矩阵
如果是行列转换为矩阵,那很简单,用数据透视表就可以。
这是一个9022行的数据,我们把这两列数据转换为 事项X材料 的 2-模矩阵 。
选中这两列数据,然后选择【插入】--【数据透视表】
然后把变量拖入【行】,另一个拖入【列】,值的话随便拖一个计数就行。
然后全选把数据粘贴为数值。
选中整个矩阵表格,把空值替换为0,矩阵就做好了。
这个是最简单的方法。
矩阵转换为行和列
这是一个 1230X952 的矩阵,因为跑模型需要,我要把它变成2列。
普通的行和列转换用Excel的OFFSET函数就行。
普通的行和列大不了手动也行。
但是,我的数据量特别大,并且我还不会OFFSET。在网上查到的offset操作看不懂,去图书馆查Excel的offset操作,操作连网上的还不如。
用Excel搞了一下午,几乎毫无所获。
我能怎么办,我也很绝望啊。
慢悠悠的吃饭,逛了下B站,听了下我们天依的新歌,就是这首【洛天依】嘘つきは恋のはじまり
忽然灵光一闪,矩阵的事,能用Excel吗?ucinet啊~
回想了一下看过的书。然后就做出来了。
ucinet--选择【data】--【Matrix to Vector】
把矩阵选进去,会自动生成vector的,注意下面option那里,【exclude diagonal values】,对角线的值看自己的情况决定要不要。然后点击【OK】
打开以后, 116万行啊 。要不是ucinet救我狗命,我用函数和Excel得算多久。。。
要是
把文档另存为CSV文件或Excel文件 :【file】--【save as】
Excel只能打开104万行。。。而我的数据是116万行,所以可以曲线救国,先用access打开,然后在选出自己要的变量,再粘贴进来Excel。
打开access选择【打开】,把文件类型改为【所有文件】,选择刚刚导出来的CSV文件,然后点击【打开】
选择默认的第一个【带分隔符】,点击【下一步】
选择默认的【逗号】,选择【下一步】或者【完成】,反正都是默认到底。
然后双击打开刚刚导入的文件
可以看到,我们的116万条数据是在的
选择sheet1,点击【筛选】,然后选出值为1的数据,就是我想要的内容。
完结。
彩蛋 :Excel的矩阵转换为vector操作
第一种
转换为列
公式:=OFFSET(A$1,TRUNC((ROW()-1)/5),MOD(ROW()-1,5))
转换为行
E和5都注意根据内容修改
公式:=OFFSET($A$1,INT(COLUMN(D1)/4)-1,MOD(COLUMN(D1),4))
小师叔和夏禾结尾。