1

timefloat値を含むarray( )があります。この配列の要素を減算し、その結果を別の配列に格納して、さらに出力したいと思います。私は次のことを試しました:

time=Array.new

time=open("/home/sakshi/Desktop/test/PACKET-WISE_DETAILS/pkt_time.tsv", &:read)

time.each do |i|
  puts time[i+1]-time[i]
end

しかし、私はこのエラーが発生しています:

'in `+': can't convert Fixnum into String (TypeError) ' error. 

また、上記のコードをループで書き直そうとしましたwhileが、それも機能していません。

4

1 に答える 1

1

これは、オブジェクト、つまりIDに整数値を追加しているためです。これを試してください

time = Array.new

time = open("/home/sakshi/Desktop/test/PACKET-WISE_DETAILS/pkt_time.tsv", &:read)

time.each_with_index do |i,index|

 puts time[index+1]-time[index] if index < time.size #to avoid overflow when reaches the end

end
于 2013-03-01T12:42:20.853 に答える