Python Pandas 相当于 JavaScript 中的
通过以下 CSV 示例:
Source,col1,col2,col3
foo,1,2,3
bar,3,4,5
我使用Pandas的标准方法是这样的:
解析 CSV
选择数据框中的列( 和
col1
col3
)- 处理列(例如,对 和 的值进行调整)
col1
col3
)
有没有一个JavaScript库可以像Pandas一样做到这一点?
通过以下 CSV 示例:
Source,col1,col2,col3
foo,1,2,3
bar,3,4,5
我使用Pandas的标准方法是这样的:
解析 CSV
选择数据框中的列( 和col1
col3
)
col1
col3
)有没有一个JavaScript库可以像Pandas一样做到这一点?
这个wiki将总结和比较许多类似Javascript的库。pandas
一般来说,你应该看看Javascript库。 对于在Javascript中处理数据非常有用的“瑞士军刀”,就像对Python有帮助一样。您可能会看到经常使用,例如 ,即使不完全是 DataFrame/Pandas 的替换(即 没有相同的 API; 没有 / 具有与行为匹配的方法的类)d3
d3
pandas
d3
pandas
d3
d3
d3
Series
DataFrame
pandas
Ahmed的回答解释了如何使用d3来实现一些DataFrame功能,下面的一些库受到LearnJsData等东西的启发,它使用和。d3
lodash
至于DataFrame风格的数据转换(拆分,联接,分组等),这里有一些Javascript库的快速列表。
请注意,有些库是 Node.js 又名 Server-side Javascript,有些是浏览器兼容的,也就是客户端 Javascript,有些是 Typescript。因此,请使用适合您的选项。
dfd
pandas
构建在 ;同样是建立在numpy
danfo-js
tensorflow-js
然后,在遇到这个问题,检查这里的其他答案并进行更多搜索之后,我发现了以下选项:
recline
)
以下是我们过去考虑上述选择的标准
我一直在为JavaScript开发一个名为data-forge的数据争论库。它的灵感来自LINQ和Pandas。
它可以像这样安装:
npm install --save data-forge
您的示例将如下所示:
var csvData = "Source,col1,col2,col3\n" +
"foo,1,2,3\n" +
"bar,3,4,5\n";
var dataForge = require('data-forge');
var dataFrame =
dataForge.fromCSV(csvData)
.parseInts([ "col1", "col2", "col3" ])
;
如果您的数据位于 CSV 文件中,您可以按如下方式加载它:
var dataFrame = dataForge.readFileSync(fileName)
.parseCSV()
.parseInts([ "col1", "col2", "col3" ])
;
可以使用该方法转换行。select
您可以使用该方法提取列,然后使用该方法转换该列中的值。getSeries
select
您可以像这样将数据从数据框中取回:
var data = dataFrame.toArray();
对列求平均值:
var avg = dataFrame.getSeries("col1").average();
你可以用它做更多的事情。
您可以在 npm 上找到更多文档。