Drexel dragonThe Math ForumDonate to the Math Forum



Search All of the Math Forum:

Views expressed in these public forums are not endorsed by Drexel University or The Math Forum.


Math Forum » Discussions » Software » comp.soft-sys.math.mathematica

Topic: Obtaining Random LIne from A file
Replies: 9   Last Post: Feb 21, 2013 5:46 AM

Advanced Search

Back to Topic List Back to Topic List Jump to Tree View Jump to Tree View   Messages: [ Previous | Next ]
Ramiro Barrantes-Reynolds

Posts: 9
Registered: 10/14/07
Obtaining Random LIne from A file
Posted: Feb 16, 2013 1:07 AM
  Click to see the message monospaced in plain text Plain Text   Click to reply to this topic Reply


Hello,

I would like to get a random line from a file, I know this can be done
with Mathematica but I am playing with using sed to see if it goes
faster, say I want to get line 1000

In mathematica it would be:

<<"! sed -n p1000 filename.txt"

However, I am trying to put the filename as a variable, say

filename="hugefile.txt"

cmd="! sed -n p1000 "<>filename
<<cmd

does not work.

How can I do this?

Lastly, I am getting a randomline using mathematica doing:

getRandomLine[file_, n_] :=
Block[{i = RandomInteger[{1, n}], str = OpenRead[file], res},
Skip[str, "String", i];
res = Read[str, Expression];
Close[str];
res[[2]]
]

However, it is very slow so I was going to try with sed.Any suggestions?

Thanks in advance,
Ramiro





Point your RSS reader here for a feed of the latest messages in this topic.

[Privacy Policy] [Terms of Use]

© Drexel University 1994-2014. All Rights Reserved.
The Math Forum is a research and educational enterprise of the Drexel University School of Education.