一、R方面

R中类型:向量(vector)、数据框、矩阵、列表

数据处理转换时:数值型num、因子(factor)、字符型等等

1)matrix

feature:
1、二维数组
2、每个元素必须有相同的数据类型

create:

matrix(vector, nrow = number_of_rows, ncol = number_of_columns, byrow = T/F)  

对角矩阵:diag()

matrix(0,nrow = 4,nol = 4)

diag(rep(1,4)) # 对角线为1,重复4次不循环

  # rep函数, rep(vector x, ...)参数可为 each = ,x重复向量x的次数,times = 循环的次数,len = 输出长度

operate:

dim(): 行列数(维度)
nrow():行
ncol():列
rownames():行名
colnames():列名
cbind():按列合并矩阵
rbind():按行合并矩阵 

注意矩阵的乘法:A%*%B
矩阵的逆: solve(A)

exp: 行列重命名
rownames(xxx) = paste0("x_",1:4)

数据量增大时,计算特征值,逆等不方便,可使用R包提高效率 rARPACK---(大规模举证运算时使用)

  • 特征值分解eigs()
  • SVD分解svds()

特殊矩阵: 稀疏矩阵(数值为0的元素多于数值非0的元素)
应用场景:用户购买、社交网络
处理稀疏矩阵有相关包 Matrix

相关公式如下表:

2)data.frame

1、csv、txt文件读入时自动存储为数据框
2、data.frame(col1,col2,col3...)

operate: 汇总-变大-变小-变序-变形-数据透视
变大--merge(df1,df2,by)--合并数据框
变小--引用,筛选

汇总-- summary()\str()\table()

变大--merge(x, y , by ) 与 python pd.merge比较类似

变小--取行df[x,] 取列df$xx  区别python 有相关函数取loc,iloc,iat

变序-- 向量可直接用sort,而数据框用order( df$x, df$y , descring =T) 先按x排序在按y排序

变形--(数据重排)reshape2包中melt函数,宽表变窄表

..

数据类型操作简单对比(R和Python)的更多相关文章

  1. 笔记——malloc、free、不同数据类型操作、.pyc文件、python安装第三方包、验证一个网站的所有链接有效性

    C — malloc( ) and free( ) C 语言中使用malloc( )函数申请的内存空间,为什么一定要使用free释放? **malloc()函数功能:是从堆区申请一段连续的空间,函数结 ...

  2. python操作三大主流数据库(12)python操作redis的api框架redis-py简单使用

    python操作三大主流数据库(12)python操作redis的api框架redis-py简单使用 redispy安装安装及简单使用:https://github.com/andymccurdy/r ...

  3. ruby和Python简单对比

    前不久学了ruby,发现ruby和Python非常像,于是自个测试对比了下,测完了才知道网上有现成的……下面是测试结果   序列(包括列表和元组等)有分片的特点:可能会比较方便的提取其中特定元素,暂时 ...

  4. 四大机器学习编程语言对比:R、Python、MATLAB、Octave

    本文作者是一位机器学习工程师,他比较了四种机器学习编程语言(工具):R.Python.MATLAB 和 OCTAVE.作者列出了这些语言(工具)的优缺点,希望对想开始学习它们的人有用. 图源:Pixa ...

  5. python基础之数据类型操作补充,集合及其操作,深浅拷贝

    内容概要: 数据类型操作补充 集合及其操作 深浅拷贝1.基础数据类型补充 1.1字符串的操作补充li = ["李嘉诚", "麻花藤", "黄海峰&qu ...

  6. Python数据分析与展示[第三周](pandas数据类型操作)

    数据类型操作 如何改变Series/ DataFrame 对象 增加或重排:重新索引 删除:drop 重新索引 .reindex() reindex() 能够改变或重排Series和DataFrame ...

  7. Rx与Async Task的简单对比

    有关Reactive Extensions的介绍可见https://rx.codeplex.com/,总的来说,你可以当它是又一个异步编程的框架,它以观察者模式实现了对数据流的的“订阅”.一个列表,一 ...

  8. 让R与Python共舞

    转载:http://ices01.sinaapp.com/?p=129      R(又称R语言)是一款开源的跨平台的数值统计和数值图形化展现 工具.通俗点说,R是用来做统计和画图的.R拥有自己的脚本 ...

  9. 对比 C++ 和 Python,谈谈指针与引用

    花下猫语:本文是学习群内 樱雨楼 小姐姐的投稿.之前已发布过她的一篇作品<当谈论迭代器时,我谈些什么?>,大受好评.本文依然是对比 C++ 与 Python,来探讨编程语言中极其重要的概念 ...

随机推荐

  1. Web基础之日志

    Web基础之日志   日志在企业开发中有着不可或缺的作用,它可以用以记录用户操作.系统运行状态和错误信息.日志记录的好坏直接关系到系统出现问题时定位的速度.   最开始的日志一般使用log4j,后来s ...

  2. 文件上传报错java.io.FileNotFoundException拒绝访问

    局部代码如下: File tempFile = new File("G:/tempfileDir"+"/"+fileName); if(!tempFile.ex ...

  3. jrebel插件的激活

    转 jrebel idea插件激活,亲测可用: 在jrebel server处,写上: http://139.199.89.239:1008/88414687-3b91-4286-89ba-2dc81 ...

  4. python 小数相加报错 invalid literal for int() with base 10

    for i in column1: x = int(i) s += xprint "sum:",s,"count:",len(column1)# round ( ...

  5. R apply()函数

    创建一个列表变量,它的第一个元素包含所有从0到9的平方数,第二个元素为10到19之内的所有平方数,依此类推,最后一个元素为90到99之内的平方数.没有平方数的元素也应该被包含在内! 学习网友的解题思路 ...

  6. Vulkan 之 Layers

    Layers 暴露给api层,不像传统图形API集成在驱动里面,开发者根据自己的需要进行开启,最终目的还是为了提高性能. The Loader he loader is the central arb ...

  7. /和//的区别(python)

    /  除 得到的是浮点数,结果是大数的时候会使用科学计数法 但是 / 会在遇到大数时候运算不准确 因为将两个int相除会产生一个浮点数,并且除法的确切结果不能精确地表示为float. 精确结果必须四舍 ...

  8. HDU 3397 线段树 双懒惰标记

    这个是去年遗留历史问题,之前思路混乱,搞了好多发都是WA,就没做了 自从上次做了大白书上那个双重懒惰标记的题目,做这个就思路很清晰了 跟上次大白上那个差不多,这个也是有一个sets标记,代表这个区间全 ...

  9. pop3&smtp

    pop3&smtp pop3 Post Office Protocol - Version 3 pop3协议是离线邮件协议,是客户端取邮件用的. 默认监听在TCP:110端口. POP3会话有 ...

  10. C# Stream篇(五) -- MemoryStream

    MemoryStream 目录: 1 简单介绍一下MemoryStream 2 MemoryStream和FileStream的区别 3 通过部分源码深入了解下MemoryStream 4 分析Mem ...