给定矩阵或数据框x,t函数返回x的转置。
矩阵里面所有内容都是相同类型数据,使用t()不会有问题。
转置后
可以看出来就是行变列,列变行了。数值型还是数值型。
再看看字符串类型的转置
转置后
可以看出来就是行变列,列变行了。字符串还是字符串。
数值型数据框和矩阵差不多,转置不会有太大问题。
转置后
但是转置前是data.frame,转置后的结果是matrix
如果data.frame里面既有数值型,又有字符串,t()转置后得到的matrix里面全部都会变成字符串。
可以看到Name是chr类型,Score是num类型 。再来t()转置后看看
可以看到原来的Score的数值型被转换成chr字符串类型了,不能再进行针对数值型的操作了。
这个时候如果还希望保持原来的数据类型,则需要用到as.data.frame函数
这时候转化后的Score行里面的数字都是数值型了。
因此,在对保护复杂数据类型的data.frame进行转置时,最好使用as.data.frame(t(x))来操作。
paired=TRUE(TRUE可以简写成T)意思是对X和Y这组paired数据(就是说(X_i,Y_i)可以很自然地组成一对,而(X_i,Y_j)(i≠j)就不能当成一对)做t检验,即对所有Y_i-X_i(也可能是X-Y,忘了是哪个了)组成的一个样本做t检验。paired=FALSE(FALSE可以简写成F)意思是对X和Y这2个相互独立的样本做2个样本的t检验。
t检验的意思你自己百度吧。。。单个样本的是假设样本相互独立且来自同一个正态分布,一般是检验总体的平均数是不是等于某一个值(一般是0);两个样本的是假设两个样本相互独立且都来自于正态分布,一般是检验它们的平均数差值是不是等于某一个值(一般是0)。