file - 如何从 Torch/Lua 中的文件加载表?

标签 file lua load torch

操作非常简单。我有一个文件,其中包含一个由 N 行和 6 列组成的表格,我想将它加载到我的 Torch/Lua 脚本中的表格中。

数据文件看起来是这样的:

chromNameA  startA  endA    chromNameB  startB  endB
chr22   16867980    16868130    chr22   16669675    16678717
chr22   16867980    16868130    chr22   16685348    16701095
chr22   16867980    16868130    chr22   16723869    16739035
chr22   16867980    16868130    chr22   16748016    16750787
chr22   16867980    16868130    chr22   16750788    16755877

我想将它加载到一个表中,例如 table[1][2] 包含 16867980 等等。

我该怎么做?谢谢

最佳答案

您可以使用 string.match将单行解析为表格并使用 io.lines遍历文件中的行:

-- script.lua
local t, patt = {}, ("(%w+)%s+"):rep(5).."(%w+)"
for line in io.lines() do
  if not line:find("^chromNameA") then
    table.insert(t, {line:match(patt)})
  end
end
print(#t, t[1][1], t[1][6]) -- prints `5 chr22 16678717`

-- file.txt
chromNameA  startA  endA    chromNameB  startB  endB
chr22   16867980    16868130    chr22   16669675    16678717
chr22   16867980    16868130    chr22   16685348    16701095
chr22   16867980    16868130    chr22   16723869    16739035
chr22   16867980    16868130    chr22   16748016    16750787
chr22   16867980    16868130    chr22   16750788    16755877

-- execution: lua script.lua <file.txt

然后您可以将脚本作为 lua script.lua <file.txt 启动它应该会生成一个具有您想要的结构的表格。

关于file - 如何从 Torch/Lua 中的文件加载表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29474646/

相关文章:

lua string.gsub ('The farmer said "这个世界真棒 !",' "','\"' )

lua - 枚举带有尾随 nils 的变量返回值

jquery - 通过 AJAX 加载内容和预加载图像?

NHibernate 将保存,但不会加载实体

c - PPM扫描和打印

javascript - 如何使用 NodeJS 和 Nginx 托管和管理文件上传?

c# - 如何在解决方案C#中获取另一个项目的绝对路径

windows - 在 'Lua for windows' 中设置运行文件的路径

c++ - 如何使用 fscanf_s 从文件中获取字符串?

assembly - ARM ASM 中的 LDRB - 一般问题