[Numpy-discussion] Reading and Comparing Two Files
josef.pktd at gmail.com
josef.pktd at gmail.com
Sun Feb 28 08:52:00 EST 2010
On Sun, Feb 28, 2010 at 7:24 AM, Friedrich Romstedt
<friedrichromstedt at gmail.com> wrote:
> 2010/2/28 Robert Love <rblove_lists at comcast.net>:
>> What is the efficient numpy way to compare data from two different files? For the nth line in each file I want to operate on the numbers. I've been using loadtxt()
>>
>> data_5x5 = N.loadtxt("file5")
>>
>> data_8x8 = N.loadtxt("file8")
>>
>> for line in data_5x5:
>> pos5 = N.array([line[0], line[1], line[2]])
If you just want to compare row by row when you already have the
arrays, you can just use numpy, e.g. based on first 3 columns:
(data_8x8[:,:3] == data_5x5[:,:3]).all(1)
but from your question it's not clear to me what you actually want to compare
Josef
>
> I believe there are several ways of doing that, and mine might not be
> the most efficient at all:
>
> for line5, line8 in zip(data_5x5, data_8x8):
> # line5 and line8 are row vectors of paired lines
> pass
>
> complete = numpy.hstack(data_5x5, data_8x8) # If data_5x5.shape[0] ==
> data_8x8.shape[0], i.e., same number of rows.
> for line in complete:
> # complete is comprised of concatenated row vectors.
> pass
>
> for idx in xrange(0, min(data_5x5.shape[0], data_8x8.shape[0])):
> line5 = data_5x5[idx]
> line8 = data_8x8[idx]
> # Do sth with the vectors. Or:
> a1 = data_5x5[idx, (0, 1, 2)] # Extract items 0, 1, 2 of line idx
> of first file.
> a2 = data_8x8[idx, (0, 42)] # Extract items 0, 42 of line idx of
> second file.
>
> ...
>
> Friedrich
> _______________________________________________
> NumPy-Discussion mailing list
> NumPy-Discussion at scipy.org
> http://mail.scipy.org/mailman/listinfo/numpy-discussion
>
More information about the NumPy-Discussion
mailing list