array problem with sorting - maybe easy but not for me

M

Mmcolli00 Mom

This code reads in a text file with comma separated values. Problem is,
some values are missing and it causing other values to ride up the list.
I want to replace those values with string 'no value' then adjust there
others if the next value is not listed on the second iteration of the
array. I am new to learning programming.

patientrecords.txt

1,PersonID,PersonID
2,ID,ID
3,LastName,Social Security #<-insert 'no value'
4,Social Security, Address #<-change array[2] Social Security
5,Address,UniqueID #<-change array[2] to Address
6,UniqueID,Potassium #<-change array[2] to UniqueID



**************************************************
File.open('patientrecords.txt', 'r') do |temp|
array = []
temp.each_line do |line|
array = line.chomp.split(",",0)
nextVal = array[0].to_i + 1
line.each_line do |n1|
if array[1] != array[2] then
if array[0] != nextVal then
array[2] = "no value"
end
#array[2] = array[1] #populates the array[2]
end
end
puts array[0]+","+array[1]+","+array[2]
end
end

Attachments:
http://www.ruby-forum.com/attachment/3148/patientrecords.txt
 
M

Mmcolli00 Mom

Do you think there is another way to do this? I have tried taking out
the numbers array[0] and reading in as hash but I can't get the next
value in Hash. I have to have the next value to compare like this.

psuedo snippet:

if the array[1] != array[2] then
array[2]= 'no value' if 'next' array[1] == array[2] #<where i am stuck
end
 
I

Ilan Berci

Mmcolli00 said:
Do you think there is another way to do this? I have tried taking out
the numbers array[0] and reading in as hash but I can't get the next
value in Hash. I have to have the next value to compare like this.

psuedo snippet:

if the array[1] != array[2] then
array[2]= 'no value' if 'next' array[1] == array[2] #<where i am stuck
end

take out "line.each_line do|n1|" statement and it's associated end and I
think you will get what you want..

ilan
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,755
Messages
2,569,537
Members
45,021
Latest member
AkilahJaim

Latest Threads

Top