Re: [R] Clever way to match two lists

2013-03-21 Thread Noah Silverman
Jim,

That's perfect.  Thanks.

Also tried Neal's method, but it wound up be MUCH slower to build the index.

Thanks,

--
Noah Silverman, M.S.
UCLA Department of Statistics
8117 Math Sciences Building
Los Angeles, CA 90095



On Mar 21, 2013, at 6:07 PM, Jim Holtman  wrote:

> indx <- match(main.df$id, key$id, nomatch = 0)
> main.df$value[indx != 0] <- key$value[indx]
> 
> Sent from my iPad
> 
> On Mar 21, 2013, at 20:57, Noah Silverman  wrote:
> 
>> Hello,
>> 
>> I have a large data.frame of 80,000 rows where each row is a record.  Each 
>> record is indexed by a unique ID in the first column.
>> 
>> I need to update values for a column for *some* of the records.  I was given 
>> a data.frame with about 10,000 rows and two columns.  The first is the 
>> record ID, the second is the new values.
>> 
>> The slow way to do this is to loop through the new data (10,000 rows) and 
>> update the value in the corresponding master data.frame.  However this will 
>> be painfully slow.  
>> 
>> Does anyone have a clever way to shortcut the process.  In English, what I 
>> want to do is, "For each row in the update list, lookup the corresponding ID 
>> in the master data frame and update the value."
>> 
>> 
>> Ideas?
>> 
>> 
>> --
>> Noah Silverman, M.S.
>> UCLA Department of Statistics
>> 8117 Math Sciences Building
>> Los Angeles, CA 90095
>> 
>> __
>> R-help@r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-help
>> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
>> and provide commented, minimal, self-contained, reproducible code.

__
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.


Re: [R] Clever way to match two lists

2013-03-21 Thread Jim Holtman
indx <- match(main.df$id, key$id, nomatch = 0)
main.df$value[indx != 0] <- key$value[indx]

Sent from my iPad

On Mar 21, 2013, at 20:57, Noah Silverman  wrote:

> Hello,
> 
> I have a large data.frame of 80,000 rows where each row is a record.  Each 
> record is indexed by a unique ID in the first column.
> 
> I need to update values for a column for *some* of the records.  I was given 
> a data.frame with about 10,000 rows and two columns.  The first is the record 
> ID, the second is the new values.
> 
> The slow way to do this is to loop through the new data (10,000 rows) and 
> update the value in the corresponding master data.frame.  However this will 
> be painfully slow.  
> 
> Does anyone have a clever way to shortcut the process.  In English, what I 
> want to do is, "For each row in the update list, lookup the corresponding ID 
> in the master data frame and update the value."
> 
> 
> Ideas?
> 
> 
> --
> Noah Silverman, M.S.
> UCLA Department of Statistics
> 8117 Math Sciences Building
> Los Angeles, CA 90095
> 
> __
> R-help@r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.

__
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.


[R] Clever way to match two lists

2013-03-21 Thread Noah Silverman
Hello,

I have a large data.frame of 80,000 rows where each row is a record.  Each 
record is indexed by a unique ID in the first column.

I need to update values for a column for *some* of the records.  I was given a 
data.frame with about 10,000 rows and two columns.  The first is the record ID, 
the second is the new values.

The slow way to do this is to loop through the new data (10,000 rows) and 
update the value in the corresponding master data.frame.  However this will be 
painfully slow.  

Does anyone have a clever way to shortcut the process.  In English, what I want 
to do is, "For each row in the update list, lookup the corresponding ID in the 
master data frame and update the value."


Ideas?


--
Noah Silverman, M.S.
UCLA Department of Statistics
8117 Math Sciences Building
Los Angeles, CA 90095

__
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.