全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件 Stata专版
4712 2
2018-10-08
现在手中有企业三年的信息,包括名称、研发费用和企业年度,现在想设置一个虚拟变量,企业在三年中任意一年有研发费用支出的,每一年的虚拟变量值都设为1;如果三年都没有研发支出,虚拟变量设为0,应该用什么语句呢?
二维码

扫码加我 拉你入群

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

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

全部回复
2018-10-9 06:41:19
你若要问程序,永远附上相关资料;若附上资料,永远用 dataex 印出资料。先 ssc install dataex (并见说明),将原始 Stata 资料中具有”代表性”的一部分资料列出,以供有意回答者实验之用,并能提供具体操作指令。并请参考 http://www.jianshu.com/p/9870080fe769,  https://bbs.pinggu.org/thread-5048204-1-1.html, 与 https://bbs.pinggu.org/thread-5917273-1-1.html
二维码

扫码加我 拉你入群

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

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

2024-5-14 04:58:30
可以使用编程语言如Python的pandas库来实现这个任务。以下是一个简单的示例:

```python
import pandas as pd

# 假设你的数据存储在一个名为df的DataFrame中,且已有'企业名称'、'研发费用'和'企业年度'三列
# 首先,创建一个新列'虚拟变量'
df['虚拟变量'] = 0

# 然后,使用groupby检查每个企业在三年中的研发费用是否为非零,并将结果设为1
for year in range(年份范围的起始值, 年份范围的结束值+1):  # 将'年份范围的起始值'和'年份范围的结束值'替换为实际年份,例如2018, 2019, 2020
    df.loc[(df['企业年度'] == year) & (df['研发费用'] > 0), '虚拟变量'] = 1

# 最后,对于任何三年中虚拟变量仍为0的企业,将其设为1(确保至少有一次研发支出)
df['虚拟变量'] = df.groupby('企业名称')['虚拟变量'].transform('max')

```
这个代码会根据你的需求创建一个名为'虚拟变量'的新列,并按照要求设置值。请将年份范围的起始值和结束值替换为你实际的数据范围,例如2018, 2019, 2020。

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



二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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