在Stata中合并数据库,并根据合并数据的标识和值创建新变量

我有两个数据库,DB1和DB2,我想要合并,但我遇到了困难。我想要帮助确定Stata称之为我想要做的事情。在Stata中合并数据库,并根据合并数据的标识和值创建新变量

DB1具有约1000的观察,看起来像:

+----------+ 

| date b |

|----------|

1. | 1 7 |

2. | 2 6 |

3. | 3 7 |

+----------+

DB2由每65个标识与1000的观察。它看起来是这样的:

+--------------+ 

| date id b |

|--------------|

1. | 1 1 4 |

2. | 2 1 4 |

3. | 3 1 5 |

4. | 1 2 9 |

5. | 2 2 8 |

6. | 3 2 7 |

7. | 1 3 1 |

8. | 2 3 2 |

9. | 3 3 1 |

+--------------+

我想,这样最终的数据库看起来像DB1合并DB2:

+------------------------------+ 

| date b id1b id2b id3b ...|

|------------------------------|

1. | 1 7 4 9 1 ...|

2. | 2 6 4 8 2 ...|

3. | 3 7 5 7 1 ...|

+------------------------------+

我一直在阅读有关合并的命令,但单独不会造成我的最终数据库。

你能直接告诉我这些材料吗?你打电话给我想做什么?我觉得我需要命令Stata生成新的变量。

回答:

@William Lisowski是对的。这就得到你所要求的,简短的rename。对于您的分析而言,最好的结构是不是很清楚:大多数使用类似数据的工作会更容易进行reshape long

clear 

input date b

1 7

2 6

3 7

end

save DB1

clear

input date id b

1 1 4

2 1 4

3 1 5

1 2 9

2 2 8

3 2 7

1 3 1

2 3 2

3 3 1

end

reshape wide b, j(id) i(date)

merge 1:1 date using DB1

事实上,我更通常做这样的事情,直接获得long结构:

clear 

input date b

1 7

2 6

3 7

end

rename b B

save DB1 , replace

clear

input date id b

1 1 4

2 1 4

3 1 5

1 2 9

2 2 8

3 2 7

1 3 1

2 3 2

3 3 1

end

merge m:1 date using DB1

以上是 在Stata中合并数据库,并根据合并数据的标识和值创建新变量 的全部内容, 来源链接: utcz.com/qa/260519.html

回到顶部