Find Jobs
Hire Freelancers

Data manipulation: a simple but non-trivial project. (I require providing the source code in C++))

£20-250 GBP

Completed
Posted over 11 years ago

£20-250 GBP

Paid on delivery
Please read carefully and understand the task. I included a simple example below. I have a datafile consisting of three columns (x, y, z). I would like to compare each set of (x,y), if two sets in the data are equal (up to ± 0.5) then I'd like to compare the two z columns. Here, I want to apply the following criteria: 1. If any z is outside the range (117 to118 && 122 to 128) then I'd like the row containing the z outside this range to be removed from the list of data (but be printed in another list containing the removed rows). 2. If the two z values lie within the previous range, then I would like the one farther from (125 ± 0.2) to be removed from the data. 3. If the two z values lie within (124±0.6) then keep both in the file. Of course, if there's a set of (x,y) that do not have any matches, then this set is to be kept in the file. Finally and more importantly, I'd like the source code in C/C++ for this somewhat straightforward task. Full payment will be made after receiving and testing this. To explain what I want exactly, here's an simplified version of what I want: Suppose we have this set of data (only two columns) 1 2 2 2 1 3 1 2 1 3 1 2 Then I say, if two rows start with the same number, then I only want the one which has the second column equal to 3. So when the program runs, it starts with the first row (1, 2), then compare it to the rest. Then it finds the row (1, 3). In this case both rows start with the same number 1. So now we compare the second column, and the action is to remove the row with second column less than 3 from the list of data (and it should be stored in another list). So as a result, the first row should go away, and we are left with 2 2 1 3 1 2 1 3 1 2 Then, row2 (2 2), which now becomes row1, is compared to the rest, but there's no other row starting with 2, so row2 is kept in the current list of data. then run the test for row (1, 3), after we've removed the first row (1, 2), is compared to the rest below it. As a result, we remove two rows with (1, 2) In the end, we should get a new data file with: 2 2 1 3 1 3 And another data file containing the removed rows 1 2 1 2 1 2 End of example. The only thing is that, in my case, I have x, y, z. I want to compare (x,y) and see if there's a match, if yes, then compare z, and apply the criteria I mentioned above. If no match (i.e. there's no other x,y that is equal to the one we are testing), then this row remains as it is in the file.
Project ID: 2336846

About the project

3 proposals
Remote project
Active 12 yrs ago

Looking to make some money?

Benefits of bidding on Freelancer

Set your budget and timeframe
Get paid for your work
Outline your proposal
It's free to sign up and bid on jobs
Awarded to:
User Avatar
Dear Hiring Manager I'm a expert in C,C++ and algorithm (please see my profile). I guarantee to complete your job well. Can i start? Best Regards, do-nhuan
£30 GBP in 1 day
4.7 (3 reviews)
2.8
2.8
3 freelancers are bidding on average £28 GBP for this job
User Avatar
Thank you for invitation. I can do it. Best regards, Tri
£30 GBP in 2 days
4.7 (15 reviews)
4.3
4.3
User Avatar
I am a regular member of online coding judges such as spoj where these type of problems are common. I will do your work within TIME LIMIT and most important ACCURATELY.
£25 GBP in 2 days
5.0 (2 reviews)
1.8
1.8

About the client

Flag of UNITED KINGDOM
Southampton, United Kingdom
5.0
1
Payment method verified
Member since Feb 14, 2012

Client Verification

Thanks! We’ve emailed you a link to claim your free credit.
Something went wrong while sending your email. Please try again.
Registered Users Total Jobs Posted
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Loading preview
Permission granted for Geolocation.
Your login session has expired and you have been logged out. Please log in again.