R语言医学数据分析实践-数据读写

【图书推荐】《R语言医学数据分析实践》-CSDN博客

《R语言医学数据分析实践 李丹 宋立桓 蔡伟祺 清华大学出版社9787302673484》【摘要 书评 试读】- 京东图书 (jd.com)

R语言编程_夏天又到了的博客-CSDN博客

R编程环境的搭建-CSDN博客

在分析公共卫生数据时,数据来源和数据格式多种多样,如文本数据、Excel数据、SPSS数据以及SAS数据等。在R语言中,数据的读取和写入是数据分析处理的重要环节。R语言提供了多种方法来读取和写入不同格式的数据,包括文本文件、Excel文件、SAS数据文件等。本节将介绍常用的数据读写方法。

2.3.1 读取文件

首先是读取文本文件。read.table()函数可用于将文本数据导入R,并将数据保存为一个数据框。例如代码h<-read.table(file='文件路径', header = FALSE, sep = "", skip = 0, nrows = -1)。其中:

  1. file:表示要读取的文本文件,路径中注意使用"\\"或"/"。
  2. sep:表示用什么分隔符分隔字段,默认以空格分隔。
  3. header:在读取数据时,决定是否将第一行数据作为变量的名称。
  4. skip:表示跳过前几行,从第几行开始读取数据。
  5. nrows:指定读取文件中的行数。

另一种常见的文本格式文件是CSV(逗号作为分隔符)文件。CSV格式是一种兼容性强的文件交换格式,在各类数据管理软件和统计软件中十分常见。read.csv()函数可用于读取CSV格式文件,该函数的用法与read. table()基本一致。为了更清晰地理解R语言数据的读取,下面来看一个示例。

假设有一个包含患者身高、体重和血压的文本文件clinical_data.txt,数据内容如下:

Patient_ID  Height  Weight  Blood_Pressure
1           170     70      120/80
2           165     65      130/85
3           180     80      140/90

通过以下代码读取该文本文件:

clinical_data <- read.table("clinical_data.txt", header = TRUE, sep = "", skip = 0, nrows = -1)

有一个包含患者年龄、性别和诊断的CSV文件clinical_data.csv,数据内容如下:

Patient_ID Age Gender Diagnosis
1 45 Male Hypertension
2 30 Female Diabetes
3 55 Male Hyperlipidemia

通过以下代码读取该CSV文件:

clinical_data <- read.table("clinical_data.csv", header = TRUE, sep = " ", skip = 0, nrows = -1)

文本文件和CSV文件的读取步骤及读取结果如图2-9所示。

图2-9

2.3.2 写入文件

在R语言中,写入文件通常使用write.table()或write.csv()等函数,具体取决于要保存的数据类型和文件格式。例如,代码"write.table(b, file = '文件路径', sep = ',', row.names = F,quote = F,append = T)"用于将数据写入文件,其函数主要参数的含义如下。

  1. sep = ',':表示用","作为字段分隔符。
  2. row.names = F:表示不添加行号。
  3. quote = F:表示不添加双引号。
  4. append = TRUE:表示将数据附加到文件尾,而不是覆盖文件。

为了更清晰地理解R语言数据的写入,参考以下示例:

clinical_data <- data.frame(
  Patient_ID = c(1, 2, 3),
  Age = c(45, 30, 55),
  Gender = c("Male", "Female", "Male"),
  Diagnosis = c("Hypertension", "Diabetes", "Hyperlipidemia")
)  #创建一个包含患者年龄、性别和诊断的数据框
write.csv(clinical_data, file = "clinical_data_output.csv", row.names = FALSE) #将数据框写入CSV文件

图2-10展示了创建的数据框的内容和将其写入CSV文件的过程。

图2-10

2.3.3 读写其他数据文件

R语言提供了很多功能包,用于读取其他格式的数据文件。例如,使用haven程序包中的read_spss()函数可以读取SPSS数据,read_sas()函数可以读取SAS数据,read_stata()函数可以读取Stata数据。使用这些函数可以将需要的数据导入R并转换为数据框格式。haven程序包还提供了相应的导出数据的函数,例如,write_sav()函数可以写入SPSS格式文件,write_sas()函数可以写入SAS格式文件,write_dta()函数可以写入Stata格式文件。

以下是其他类型数据读写的示例:

install.packages("haven")
library(haven)     #安装并加载haven程序包
#读取文件
data <- read_spss("clinical_data.sav")  	#读取以".sav"为后缀的SPSS文件数据
data <- read_sas("clinical_data.sas7bdat")	#读取以".sas7bdat"为后缀的SAS文件数据
data <- read_stata("clinical_data.dta")  	#读取以".dta"为后缀的Stata文件数据
#写入文件
clinical_data <- data.frame(
  patient_id = c(1, 2, 3, 4, 5),
  age = c(35, 45, 50, 28, 62),
  gender = c("M", "F", "M", "F", "M"),
  diagnosis = c("Hypertension", "Diabetes", "Obesity", "Asthma", "Hyperlipidemia")
)  #创建一个示例的数据框
write_sav(clinical_data, "clinical_data.sav") #写入SPSS文件
write_sas(clinical_data, "clinical_data.sas7bdat") #写入SAS文件
write_sav(clinical_data, "clinical_data.dta") #写入Stata文件
相关推荐
API快乐传递者4 分钟前
Python爬虫获取淘宝详情接口详细解析
开发语言·爬虫·python
公众号Codewar原创作者6 分钟前
R数据分析:工具变量回归的做法和解释,实例解析
开发语言·人工智能·python
赵钰老师9 分钟前
基于R语言APSIM模型应用及批量模拟(精细农业、水肥管理、气候变化、粮食安全、土壤碳周转、环境影响、农业可持续性、农业生态等)
开发语言·数据分析·r语言
lly20240625 分钟前
Highcharts 饼图:数据可视化利器
开发语言
工业3D_大熊26 分钟前
【CAE开发SDK】CEETRON Envision:适用于桌面端、Web端的数据可视化与分析
3d·数据分析·虚拟仿真·cae·cae系统开发·cae可视化·cae数据分析
李昊哲小课31 分钟前
deepin 安装 kafka
大数据·分布式·zookeeper·数据分析·kafka
lw向北.31 分钟前
Qt For Android之环境搭建(Qt 5.12.11 Qt下载SDK的处理方案)
android·开发语言·qt
Trouvaille ~35 分钟前
【机器学习】从流动到恒常,无穷中归一:积分的数学诗意
人工智能·python·机器学习·ai·数据分析·matplotlib·微积分
IT女孩儿1 小时前
JavaScript--WebAPI查缺补漏(二)
开发语言·前端·javascript·html·ecmascript
m0_748238921 小时前
webgis入门实战案例——智慧校园
开发语言·ios·swift