数据类型操作简单对比(R和Python)
一、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)的更多相关文章
- 笔记——malloc、free、不同数据类型操作、.pyc文件、python安装第三方包、验证一个网站的所有链接有效性
C — malloc( ) and free( ) C 语言中使用malloc( )函数申请的内存空间,为什么一定要使用free释放? **malloc()函数功能:是从堆区申请一段连续的空间,函数结 ...
- python操作三大主流数据库(12)python操作redis的api框架redis-py简单使用
python操作三大主流数据库(12)python操作redis的api框架redis-py简单使用 redispy安装安装及简单使用:https://github.com/andymccurdy/r ...
- ruby和Python简单对比
前不久学了ruby,发现ruby和Python非常像,于是自个测试对比了下,测完了才知道网上有现成的……下面是测试结果 序列(包括列表和元组等)有分片的特点:可能会比较方便的提取其中特定元素,暂时 ...
- 四大机器学习编程语言对比:R、Python、MATLAB、Octave
本文作者是一位机器学习工程师,他比较了四种机器学习编程语言(工具):R.Python.MATLAB 和 OCTAVE.作者列出了这些语言(工具)的优缺点,希望对想开始学习它们的人有用. 图源:Pixa ...
- python基础之数据类型操作补充,集合及其操作,深浅拷贝
内容概要: 数据类型操作补充 集合及其操作 深浅拷贝1.基础数据类型补充 1.1字符串的操作补充li = ["李嘉诚", "麻花藤", "黄海峰&qu ...
- Python数据分析与展示[第三周](pandas数据类型操作)
数据类型操作 如何改变Series/ DataFrame 对象 增加或重排:重新索引 删除:drop 重新索引 .reindex() reindex() 能够改变或重排Series和DataFrame ...
- Rx与Async Task的简单对比
有关Reactive Extensions的介绍可见https://rx.codeplex.com/,总的来说,你可以当它是又一个异步编程的框架,它以观察者模式实现了对数据流的的“订阅”.一个列表,一 ...
- 让R与Python共舞
转载:http://ices01.sinaapp.com/?p=129 R(又称R语言)是一款开源的跨平台的数值统计和数值图形化展现 工具.通俗点说,R是用来做统计和画图的.R拥有自己的脚本 ...
- 对比 C++ 和 Python,谈谈指针与引用
花下猫语:本文是学习群内 樱雨楼 小姐姐的投稿.之前已发布过她的一篇作品<当谈论迭代器时,我谈些什么?>,大受好评.本文依然是对比 C++ 与 Python,来探讨编程语言中极其重要的概念 ...
随机推荐
- Linux: 桥接 NET HOST-only
桥接 虚拟机会利用真实的网卡和真实计算机之间通信 还能和同一局域网之间的计算机之间通信 缺点:会耗费一个ip地址 NET:虚拟机会通过VMnet8 虚拟的网卡与真实计算机之间通信 如果真实计可 ...
- 使用 Dashboard【转】
上一节我们完成了 Kubernetes Dashboard 的安装,本节就来实践一下. Dashboard 界面结构 Dashboard 的界面很简洁,分为三个大的区域. 顶部操作区在这里用户可以搜索 ...
- C#与unity中base64string和图片互转
C#: using System; using System.Collections.Generic; using System.Linq; using System.Text; using Syst ...
- C/C++贪心算法解决TSP问题
贪心算法解决旅行商问题 TSP问题(Traveling Salesman Problem,旅行商问题),由威廉哈密顿爵士和英国数学家克克曼T.P.Kirkman于19世纪初提出.问题描述如下: 有若干 ...
- JPA#OneToOne
无力吐槽. 一对一,一个人有一个身份证号码.一个人有一条命,类似于这一种的就是一对一的关系. 涉及到的注解两个: OneToOne JoinColumn( name="当前实体对应数据库表中 ...
- PyTorch自动微分基本原理
序言:在训练一个神经网络时,梯度的计算是一个关键的步骤,它为神经网络的优化提供了关键数据.但是在面临复杂神经网络的时候导数的计算就成为一个难题,要求人们解出复杂.高维的方程是不现实的.这就是自动微分出 ...
- 167-PHP 文本分割函数str_split(二)
<?php $str='PHP is a very good programming language'; //定义一个字符串 $arr=explode(' ',$str,-3); //使用空格 ...
- 075-PHP数组添加元素
<?php $arr = array(); //定义一个数组,它没有任何元素 echo '增加元素之前数组中元素的个数为:' . count($arr); //输出数组个数 for ($i = ...
- 移动MAS短信平台发送短信
MAS短信平台发送短信分为两种方式 参考文档下载 一.sdk调用 using mas.ecloud.sdkclient; using System; namespace 短信发送 { class Pr ...
- Java 二叉树深度 判断平衡二叉树
package cookie; public class BTreeDepthIsBalanced { int depth(BNode head) { if (head == null) { retu ...