代码之家  ›  专栏  ›  技术社区  ›  Alphaneo

将数据从Excel文件加载到R或倍频程

  •  5
  • Alphaneo  · 技术社区  · 16 年前

    我有一个包含大量数据的Excel文件。Excel中提供的内置图形包括 足够分析这些数据了,所以我考虑使用一些工具,如倍频程或R。

    我正在考虑一些方法,将Excel文件直接加载到octave或R中。我搜索了web,发现许多人通过将Excel中的数据导出到CSV文件中成功地使用了它。

    问题是: 有没有一种直接的方法来加载R或Octave格式的Excel文件?

    6 回复  |  直到 10 年前
        1
  •  4
  •   duffymo    16 年前
        2
  •  3
  •   Dirk is no longer here    16 年前

    另一个(甚至是便携式)选项是 read.xls gdata 包裹它是跨平台可用的,因为它依赖于底层Perl代码来解析、读取。。。将xls文件中的数据转换为csv文件,然后进行读取。所需的Perl包都由 格达塔 .

    使用相同的技巧可以轻松创建倍频程包。

        3
  •  3
  •   ars    16 年前

    你的问题已经回答了。如果这对将来的一些案例有所帮助,那么对于这些类型的问题,一个真正有用的资源就是 R Data Import/Export document

    例如,有一个 Excel section

    另一个有用的提示是尝试R帮助搜索系统。例如,从R提示符尝试以下任一操作:

    > ??xls
    > ??excel
    

    编辑:顺便说一下, ??xls 是的缩写 help.search("xls")

        4
  •  1
  •   andrewj    16 年前

    read.csv() 读入数据。请注意,当您读入数据时,R将读入字符串并将其转换为因子。当您试图对数据进行子集划分时,这可能会成为一个问题。

    或者,如果希望将其作为本机Excel文件读入,则可以使用 RODBC 包裹

    library('RODBC')
    yourData <- sqlFetch(odbcConnectExcel("yourData.xls"), 
      sqtable = "nameOfSheet",
      na.strings = "NA", 
      as.is = TRUE)                    
    odbcCloseAll()
    
        5
  •  1
  •   Rob Hyndman    16 年前

    Windows的一个更简单的解决方案是使用 xlsReadWrite 包裹不需要Perl,只需以R包的形式安装,就可以读写Excel文件。

        6
  •  0
  •   Sahil Desai    9 年前

    例如

    df = read.csv("~/data/demo.csv",header = TRUE)