R语言和Julia以及Python使用Feather包共享数据

1, Feather包介绍

Feather是一种数据存储格式, 介绍博客.

这里介绍, 使用R语言生成的Feather格式的文件, 使用python和julia进行读取.

这样, 在使用三个软件时, 更快捷, 更无缝对接.

2, Feather安装方法

2.1 R中Feather安装

R

# install.packages("devtools")
devtools::install_github("wesm/feather/R")

2.2 python中Feather安装

python

pip install feather-format

2.3 Julia中Feather安装

Julia

Pkg.add("Feather")

3, 生成数据5000*10000的数据框

3.1 使用R语言生成数据框

# data.frame
# 生成一个1000行, 100000列的数据框
library(feather)
test = data.frame(matrix(rnorm(500000000),5000,100000))
# 保存到D盘
write_feather(test,"d:/test.feather")

# 测试读取时间
system.time({test1 = read_feather("d:/test.feather")})

3.2 数据大小

770 MB (807,599,328 字节)

4, 三款软件读取feather文件测试

4.1 R读取:read_feather

# 测试读取时间
test1 = read_feather("d:/test.feather")

结果显示0.68s, 非常快.

> system.time({test1 = read_feather("d:/test.feather")})
   user  system elapsed
   0.36    0.19    0.68

4.2 python读取:feather.read_dataframe

import feather
test = feather.read_dataframe("d:/test.feather")
type(test)
test.shape
In [3]: %time test=feather.read_dataframe("d:/test.feather")
Wall time: 3.41 s

结果: 花费时间3.41s

4.3 Julia读取:Feather.read

# Pkg.add("Feather")
using Feather
test1 = Feather.read("d:/test.feather")
size(test1)
typeof(test1)
julia> @time a = Feather.read("d:/test.feather");
  3.675274 seconds (26.43 M allocations: 1.771 GiB, 9.46% gc time)

结果花费3.67s

结论

1, feather格式的数据可以在R,python,julia进行读取和保存, 方便软件间的数据交流.
2, feather格式的数据, 是压缩数据, 比csv和txt更具有优势
3, R语言用于数据建模, python进行程序编写, julia速度更具有优势, 三种软件的结合, 更加完美.

希望大家在数据科学的道路上越走越远, 共同努力.

微信公众号

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/yijiaobani/article/details/82989036