全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件 Stata专版
1131 1
2024-06-19
想问一下这个代码有什么问题呢 我想把图2中分行的公司拆成
图3的company1 2 3但是用分行的str(10)一直显示split出来还是原来的变量 但是老师当时教的就是用split,parse()的方法 求解!








附件列表
微信图片2.png

原图尺寸 9.87 KB

微信图片2.png

微信图片1.png

原图尺寸 5.44 KB

微信图片1.png

微信图片_20240619150653.png

原图尺寸 14.87 KB

微信图片_20240619150653.png

微信图片_20240619150653.png

原图尺寸 14.87 KB

微信图片_20240619150653.png

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2024-7-2 11:47:22
在Stata中,使用`split`命令来拆分一个变量为多个变量的确是一个常见的操作。如果你想要将一个包含多个公司的字符串变量(比如图2中的某列)拆分成不同的变量(如图3中的company1、company2、company3),你可以按照以下步骤进行:

首先,请确保你的数据已经加载到Stata中,并且你正在尝试处理的变量是正确的。

然后,使用`split`命令。但是,要注意的是`split`命令需要指定分隔符。通常情况下,如果公司名之间是以逗号或空格等特定字符分隔的,你需要告诉`split`这个信息。

例如,假设你的原始数据中的公司名是通过逗号和一个空格(", ")来分隔的:

```stata
split str(10) your_original_variable, parse(", ")
```

然而,上述命令可能不会直接生成你想要的结果——即多个以数字命名的新变量。`split`默认会创建名为`your_original_variable1`, `your_original_variable2`, 等等的一系列新变量。

如果你需要按照特定的命名规则(比如`company1`, `company2`, ...)来重命名这些新变量,你可能需要在使用完`split`命令后,再使用`rename`命令。例如:

```stata
local i = 0
foreach var of varlist your_original_variable* {
    local ++i
    rename `var' company`i'
}
```

或者,在Stata较新版本中(14.0及以上),可以利用`generate`和`tokenize()`函数来动态生成变量,这通常更灵活也更强大。

如果你在尝试使用`split`时遇到了问题,请检查以下几点:
1. 确保你的原始数据列被正确读入Stata。
2. 检查分隔符是否正确设置。如果数据中的公司名不是以逗号+空格分隔,那么你可能需要调整`parse()`函数内的字符串。
3. 查看是否有任何错误信息或警告出现,并尝试理解它们的含义。

希望这可以帮助解决你的问题!如果有具体错误消息或者更详细的数据结构描述,我可以提供更加精确的帮助。

此文本由CAIE学术大模型生成,添加下方二维码,优先体验功能试用



二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群