Beefy Boxes and Bandwidth Generously Provided by pair Networks
Just another Perl shrine
 
PerlMonks  

array of arrays with data from files

by r0adawg (Sexton)
on Dec 24, 2010 at 01:01 UTC ( #878915=perlquestion: print w/ replies, xml ) Need Help??
r0adawg has asked for the wisdom of the Perl Monks concerning the following question:

Hello, I have 2 data sets 1 in each file 'temp1.txt' and 'temp2.txt'. single line only. these are comma delimited. my x values are 1 .. 2000

if I hard code the y values into the below array of arrays, it produces a good graph using gd graph. if I reference the file... i get no output using gd graph

how do I go about putting the contents from said file into the array?

thanks
open($temp_line1, '<' ,'c:\video\temp1.txt') or die("Cannot open temp1 +.txt\n"); open($temp_line2, '<', 'c:\video\temp2.txt') or die("Cannot open temp2 +.txt\n"); my @data = ([ 0 .. 2000 ], # x Values [ $temp_line1 ], # y Values [ $temp_line2 ]); # y Values close $temp_line1; close $temp_line2; __DATA___ temp1.txt '16, 17, 19, 22, 21, 22, 25, 28, 31, 35, 39,....' temp2.txt '17, 19, 20, 22, 25, 27, 29, 33, 36, 40, 43,....'

Comment on array of arrays with data from files
Download Code
Re: array of arrays with data from files
by Anonymous Monk on Dec 24, 2010 at 01:31 UTC
Re: array of arrays with data from files
by roboticus (Canon) on Dec 24, 2010 at 01:37 UTC

    r0adawg:

    Check out perldoc -f split, ideal for splitting a string into a list of values:

    my $text = "16, 17, 19, 22, 21, 22, 25, 28, 31, 35, 39"; my @values = split /,\s*/, $text;

    ...roboticus

    When your only tool is a hammer, all problems look like your thumb.

Re: array of arrays with data from files
by ahmad (Hermit) on Dec 24, 2010 at 01:48 UTC

    You are not throughing a line there, You're throughing the filehandle which is different.

    You'll first need to put that file handle into a variable then split, or just split the file handle an array so you can use it there.

    to extract the content of the file handle you'll need to use what's called diamond operators "<>"

    for example: my @y1 = split /,/,<$temp_line1>;

      Thanks,

      that worked perfectly... I had not tried to use a temp array, I had only tried to split the current data set.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: perlquestion [id://878915]
Approved by ahmad
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others examining the Monastery: (7)
As of 2014-08-23 04:22 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The best computer themed movie is:











    Results (172 votes), past polls