从Julia中的Array {Any}中提取值

时间:2015-07-19 07:16:50

标签: arrays julia any

我有一个包含特殊字符,文本和一些数字的文本文件,我需要从中提取一些每第n行出现的值。由于文件大约有20k行,我希望算法能够找到第一行和下一行。我用readdlm()读取了文本文件到矩阵,但是数组的类型是ANY,而findfirst()给出了错误“访问未定义的引用”。你能给我一些指导吗?

此致

麦克

@Jubobs这是结果文件:

https://copy.com/i9GeXhK0qHdfwpkT

我需要提取节点79的值,该值从第10行开始 所以我希望算法找到行文件[10,1]并获取值文件[10,2],然后下一个等等。

file=readdlm("results.txt")  
findfirst(file,"79")  

access to undefined reference  
while loading In[13], in expression starting on line 1  

 in findnext at array.jl:1034 (repeats 2 times)

1 个答案:

答案 0 :(得分:1)

最好的办法是将文件作为字符串读取并使用正则表达式进行搜索(如果您愿意,也可以手动搜索)。将txt文件打开为分隔文件(可能是您的错误源自的地方)并没有多大意义。相反,请执行以下操作:

f = open("results.txt") # f <: some kind of IO object
data = readall(f) # data <: AbstractString
close(f)

我希望这会有所帮助。