如何直接从URL加载TXT文件到R?代码报错求助
直接从URL加载TXT文件到R的正确方法
当然可以直接从URL加载TXT文件到R里!你遇到的问题完全不是TXT文件的锅,而是踩了个小坑——R里根本没有内置的read.txt()函数,这才是代码运行失败的核心原因😎
下面给你几种靠谱的实现方法,完美适配你提供的MackeyGlass数据集:
方法1:用read.table()(最适合结构化数值文本)
这个函数是R读取文本类数据的常用工具,而且可以直接接受URL作为输入,连url()包裹都不需要(当然用了也不影响):
# 直接读取URL中的TXT文件,返回数据框 myfile <- read.table("https://mantas.info/wp/wp-content/uploads/simple_esn/MackeyGlass_t17.txt") # 如果需要转成数值向量(因为这个文件是单列数据) myfile_vector <- myfile$V1
这个文件是单列的时间序列数值,read.table()会自动识别换行作为分隔,完美适配。如果是其他格式的TXT(比如制表符分隔、多列),可以加sep参数指定分隔符,比如sep="\t"对应制表符。
方法2:用readLines()(逐行读取原始文本)
如果你需要先读取文本的每一行内容,再做后续自定义处理,readLines()是更好的选择:
# 逐行读取URL中的TXT内容,返回字符串向量 myfile_lines <- readLines("https://mantas.info/wp/wp-content/uploads/simple_esn/MackeyGlass_t17.txt") # 把字符串转成数值向量 myfile_numeric <- as.numeric(myfile_lines)
补充:解决可能的SSL证书问题
如果遇到某些网站的SSL证书验证失败的情况,可以用url()函数配合ssl.verifypeer=FALSE参数绕过验证(不过你的这个链接不需要,先记下来备用):
myfile <- read.table(url("https://mantas.info/wp/wp-content/uploads/simple_esn/MackeyGlass_t17.txt", ssl.verifypeer = FALSE))
总的来说,TXT文件和CSV一样,完全支持直接从URL加载到R,核心就是选对正确的读取函数——别再用不存在的read.txt()啦!
内容的提问来源于stack exchange,提问作者stats_noob
相关产品推荐
相关产品推荐

