当前位置: 首页 > news >正文

基于R语言的统计分析基础:使用键盘输入数据

在R语言中,键盘输入数据是一种灵活且直接的数据获取方式,适用于处理小数据集或需要即时用户交互的场景。通常用于交互式数据探索和分析、临时数据处理、交互式图形绘制、脚本自动化中的用户交互、特定应用场景下的数据录入中。

比如利用readline()函数根据用户输入的参数绘制图形:

# 绘图函数 
interactive_plot <- function() {  n <- as.numeric(readline("请输入点的数量: "))  x <- numeric(n)  y <- numeric(n)  # 输入每个点的坐标  for (i in 1:n) {  x[i] <- as.numeric(readline(paste("请输入第", i, "个点的x坐标: ")))  y[i] <- as.numeric(readline(paste("请输入第", i, "个点的y坐标: ")))  }  col <- readline("请输入点的颜色('red', 'blue', 'green'): ")  cex <- as.numeric(readline("请输入点的大小(1, 2, 3): "))  plot(x, y, main="交互式点图", xlab="x坐标", ylab="y坐标", col=col, cex=cex, pch=19)  cat("图形已绘制完毕。\n")  
}  interactive_plot()

使用 edit()函数及fix()函数直接编辑空数据框

edit()函数及fix()函数是R语言中常用的手动输入数据的方法,它们会自动调用一个允许手动输入数据的文本编辑器(通常是R自带的图形界面编辑器,但也可以配置为其他文本编辑器)

df <- data.frame(name = character(0), age = numeric(0),profession = character(0), grade = numeric(0))
df <- edit(df) # 或者 fix(df)

 函数运行后即可看到调集出来的数据框,可以直接在数据编辑其中编辑数据。在编辑数据集前,需要先确定好数据是字符型(character)还是数值型(numeric)

 点击其余列,可以编辑列名和选择字符型或数值型内容

 可以使用命令查看数据集是否建立成功

View(df)

使用read.table()函数从文本中读取数据

 可以将数据存储在一个字符串变量中,这里我给变量命名为dfTxt。每行数据用换行符分隔,列之间用空格分隔,第一行是列名。随后使用read.table()函数,可以从文本字符串中读取数据,并创建一个数据框。header = TRUE参数可以提示R语言第一行是列名。

dfTxt <- "
name age profession grade 
PigMan 15 math 6
feifei 16 math 22
"df <- read.table(header = TRUE, text = dfTxt)

 

使用readline()函数直接读取用户输入

 readline()函数用于从标准输入读取一行文本。这在需要逐个获取用户输入时非常有用,比如循环中询问用户信息。

name <- readline()  
age <- as.numeric(readline())
number <- as.numeric(readline(prompt = "输入一个数字: "))

 

使用scan()函数读取用户输入

 虽然scan()函数主要用于从文件读取数据,但它也可以直接从标准输入读取,允许用户输入一系列值,直到遇到文件结束符(通常是Ctrl+D在Unix/Linux系统中,或Ctrl+Z后回车在Windows系统中)。

numbers <- scan()

http://www.lryc.cn/news/443558.html

相关文章:

  • unity3d入门教程九
  • 着色器 简介
  • redis单点、主从、哨兵、集群的不同
  • notepad++的json查看
  • 基于无人机影像的可见光单木分割数据集-json格式
  • 毕业设计选题:基于ssm+vue+uniapp的捷邻小程序
  • 【毕业设计】基于 PHP 开发的社区交流系统
  • RK3568 解决Ubuntu加载驱动模块报错以及开机启动如何自动加载模块
  • Fyne ( go跨平台GUI )中文文档-Fyne总览(二)
  • 微服务常见面试题总结
  • 汽车电子零部件(16):ZCU区域控制器
  • 如何在Java服务中实现数据一致性:事务与锁机制的综合应用
  • 记录一下ElementUI 3 在浏览器导入, table表格显示问题
  • 【JavaScript】数据结构之堆
  • 工程车辆目标检测、程车检测算法、工程车辆类型检测算法
  • 【技术文章】ArcGIS Pro如何批量导出符号和工程样式?
  • javascript的闭包学习
  • JavaScript高级—— js 是单线程运行的
  • Java 微服务框架 HP-SOA v1.1.4
  • 代码随想录Day 52|题目:101.孤岛的面积、102.沉没孤岛、103.水流问题、104.建造最大岛屿
  • go webapi上传文件
  • 【小沐学GIS】基于Openstreetmap创建Sionna RT场景(Python)
  • 网安面试题1
  • 你了解system V的ipc底层如何设计的吗?消息队列互相通信的原理是什么呢?是否经常将信号量和信号混淆呢?——问题详解
  • python爬虫初体验(一)
  • ER 图 Entity-Relationship (ER) diagram 101 电子商城 数据库设计
  • JavaSE--IO流总览06:字符转换输入(输出)流: InputStreamReader ,OutputStreamWrite
  • 浙版传媒思迈特软件大数据分析管理平台建设项目正式启动
  • 漏洞——CVE简介
  • IT行业中的技术趋势与未来展望