You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在R语言中将含数字的文本文件读取为数值向量?

读取文本文件为数值向量的解决方案

1. 修正scan的参数使用

你之前写的what="numeric"是错误的,what参数需要传入数值类型的实例,而非字符串。正确写法:

data <- scan(file="./logs_formatted/Packets_Delivered_Poll_Formatted.log", what = numeric())

要是文件里全是纯数字,甚至可以省略what参数,scan默认会读取数值:

data <- scan(file="./logs_formatted/Packets_Delivered_Poll_Formatted.log")

2. 适配逗号分隔的格式

如果文件内容是1, 2, 10, 15这种逗号分隔的形式,只要指定分隔符就行:

data <- scan(file="./logs_formatted/Packets_Delivered_Poll_Formatted.log", sep = ",")

逗号后的空格scan会自动忽略,不用额外处理。

3. 转换已有的字符向量

要是已经读入了字符类型的向量,直接用as.numeric()转成数值:

data <- as.numeric(data)

如果向量里混了非数字内容,转换后会出现NA,可以用na.omit()剔除缺失值:

data <- na.omit(as.numeric(data))

4. 用read.table作为替代方案

如果scan还是不好用,试试read.table读取后转成向量:

data_df <- read.table(file="./logs_formatted/Packets_Delivered_Poll_Formatted.log")
data <- as.vector(data_df$V1)

逗号分隔的情况同样指定sep=",":

data_df <- read.table(file="./logs_formatted/Packets_Delivered_Poll_Formatted.log", sep=",")
data <- as.vector(data_df$V1)

内容的提问来源于stack exchange,提问作者Mike I

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 10:10:34