引号吃掉了我的数据~~~
时间:2022-07-23
本文章向大家介绍引号吃掉了我的数据~~~,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
耗时很长的程序忘加nohup就运行了怎么办?,有一位朋友留言提到了Excel的一个坑,这个之前也专门有文章(Excel改变了你的基因名,30% 相关Nature文章受影响,NCBI也受波及)讲述。
这让我想起来很早之前碰到的一个关于基因名的诡异问题,数千个基因读进来的数据框只有几百行,head
和tail
查看都没问题,问题出现在中间部分基因存在的引号上面了。
以下面这个简单数据为例子看下是怎么回事?
text <- "Gene;Samp1;Samp2
Pou5f1;23;34
Acg't;22;21
Deg;33;34
Oct'4;25;27
Sox2;12;13"
读入数据,查看下
data <- read.table(text=text, sep=";", row.names=1, header=T)
data
5个基因,读进去之后只有3个了。
Samp1 Samp2
Pou5f1 23 34
Acgt;22;21nDeg;33;34nOct4 25 27
Sox2 12 13
原来是引号在搞鬼,R默认在遇到引号时会认为两个引号中间的字符属于同一列。这样做的好处是某一列的内容中可包含列分隔符而不影响数据读取,坏处如上。
因为通常遇到的数据是不会在列内容中包含引号的,所以quote=""
成了我读取数据的标配,尽量不再被这个问题困扰。comment=""
也是类似 (默认#
开头的行会被忽略,有没有因此丢失过行呢?)。
data <- read.table(text=text, sep=";", row.names=1, quote="", header=T, comment="")
data
读进来,数据如下,问题解决
Samp1 Samp2
Pou5f1 23 34
Acg't 22 21
Deg 33 34
Oct'4 25 27
Sox2 12 13
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 在Linux中如何一次重命名多个文件详解
- Vim自定义高亮分组以及一些实用技巧小结
- Linux redis-Sentinel配置详解
- 使用 Apache Web 服务器配置两个或多个站点的方法
- Linux下命令行cURL的10种常见用法示例
- Apache Web 服务器的安装配置方法
- Linux(Ubuntu 18.04)上安装Anaconda步骤详解
- seaborn关联图表之折线图和散点图
- Linux 系统下安装JDK1.8的教程详解
- Linux yum 命令安装mysql8.0的教程详解
- linux中叹号命令(!)的使用小结
- ubuntu下rz/sz命令的安装与使用说明
- Linux环境变量配置的完整攻略
- linux中使用boost.python调用c++动态库的方法
- linux下pip的安装步骤及使用详解