楼主: 1258225671
5192 11

[学科前沿] PSTR模型的Python程序 [推广有奖]

  • 1关注
  • 43粉丝

教授

60%

还不是VIP/贵宾

-

威望
0
论坛币
1166 个
通用积分
213.2391
学术水平
47 点
热心指数
47 点
信用等级
43 点
经验
14364 点
帖子
375
精华
0
在线时间
2632 小时
注册时间
2010-1-16
最后登录
2025-5-11

楼主
1258225671 发表于 2022-4-14 00:51:38 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
面板平滑转移回归的Python程序,功能与王群勇老师的Stata程序包类似,可以加入线性控制变量,未来将加入工具变量。
二维码

扫码加我 拉你入群

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

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

关键词:PSTR模型 python PSTR stata程序 Stata

pstr.png (14.99 KB)

pstr.png

已有 1 人评分学术水平 热心指数 信用等级 收起 理由
qibijing3 + 1 + 1 + 1 精彩帖子

总评分: 学术水平 + 1  热心指数 + 1  信用等级 + 1   查看全部评分

沙发
1258225671 发表于 2022-4-16 12:51:51
  1. """
  2. PSTR model
  3. """
  4. from pstrplus import fit_pstr
  5. import pandas as pd
  6. import matplotlib.pyplot as plt

  7. df = pd.read_csv("../data/data_pstr.csv")  # 数据集
  8. xtset = ["id", "time"]  # 个体与时间变量
  9. dep = "y"  # 被解释变量
  10. indep = ["x1", "x2"]  # 解释变量(包含控制变量)
  11. # 第一个转换函数
  12. spec1 = {
  13.     "model": "LSTR",  # 逻辑斯蒂函数
  14.     "transition": "q",  # 转换变量
  15.     "indvars": ["x1", "x2"],  # 核心解释变量
  16.     "has_const": False,  # 是否包含截距项
  17.     "num_thereshold": 1,  # 阈值数量
  18. }
  19. # 第二个转换函数
  20. spec2 = {
  21.     "model": "ESTR",  # 指数函数
  22.     "transition": "q",  # 转换变量
  23.     "indvars": ["x1", "x2"],  # 核心解释变量
  24.     "has_const": False,  # 是否包含截距项
  25.     "num_thereshold": 1,  # 阈值数量
  26. }
  27. spec_list = [spec1, spec2]  # 转换函数设置
  28. result = fit_pstr(df, xtset, dep, indep, spec_list)  # 估计
  29. print(result.estimate)  # 参数估计结果
  30. print(result.linear_test)  # 线性检验
  31. print(result.reslinear_test)  # 残差线性检验
  32. print(result.pconstant_test)  # 参数固定性检验
  33. # 转换函数图
  34. plt.scatter(df["q"].values, result.g[:, 0])
  35. plt.show()
复制代码

藤椅
1258225671 发表于 2022-4-16 13:12:18
  1. """
  2. PSTR model
  3. """
  4. from pstrplus import fit_pstr
  5. import pandas as pd
  6. import matplotlib.pyplot as plt

  7. df = pd.read_csv("../data/data_pstr.csv")  # 数据集
  8. xtset = ["id", "time"]  # 个体与时间变量
  9. dep = "y"  # 被解释变量
  10. indep = ["x1", "x2"]  # 解释变量(包含控制变量)
  11. # 第一个转换函数
  12. spec1 = {
  13.     "model": "LSTR",  # 逻辑斯蒂函数
  14.     "transition": "q",  # 转换变量
  15.     "indvars": ["x1", "x2"],  # 核心解释变量
  16.     "has_const": False,  # 是否包含截距项
  17.     "num_thereshold": 1,  # 阈值数量
  18. }

  19. spec_list = spec1  # 转换函数设置

  20. result = fit_pstr(df, xtset, dep, indep, spec_list)  # 估计

  21. print(result.estimate)  # 参数估计结果
  22. """
  23.                Coef.  Std. Err.       z      P>|z|
  24. x1             0.346      0.026  13.082  0.000e+00
  25. x2             0.443      0.044  10.103  0.000e+00
  26. _cons         -0.707      0.052 -13.537  0.000e+00
  27. q1_x1         -0.097      0.024  -4.000  6.330e-05
  28. q1_x2         -0.380      0.054  -7.027  2.106e-12
  29. q1_threshold1 -1.466      0.055 -26.856  0.000e+00
  30. q1_gamma       4.863      1.094   4.443  8.851e-06
  31. """

  32. print(result.llh, result.aic, result.bic, result.hqic)  # 似然函数与信息准则
  33. # 910.1408482765223 -1808.2816965530446 -1780.5134482959675 -1808.9338404999703

  34. print(result.r2_within, result.r2_between, result.r2_overall)  # R平方
  35. # 0.5277087086751806 0.2232315687314226 0.22906199842381808

  36. print(result.linear_test)  # 线性检验
  37. """
  38.              H0       LM    LM.prob       F     F.prob       LR    LR.prob
  39. 0           b1=0  110.114  0.000e+00  41.485  0.000e+00  119.009  0.000e+00
  40. 1        b1=b2=0  139.841  0.000e+00  27.499  0.000e+00  154.629  0.000e+00
  41. 2     b1=b2=b3=0  167.435  0.000e+00  22.885  0.000e+00  189.268  0.000e+00
  42. 3  b1=b2=b3=b4=0  180.930  0.000e+00  18.904  0.000e+00  206.803  0.000e+00
  43. 4   b1=b3=0(HoL)   77.731  1.055e-14  13.771  7.550e-15   82.024  1.332e-15
  44. 5   b2=b4=0(HoE)   54.254  6.556e-10   9.290  7.943e-10   56.299  2.532e-10
  45. 6   b1=0|b2=b3=0  110.114  0.000e+00  41.485  0.000e+00  110.114  0.000e+00
  46. 7      b2=0|b3=0   34.794  1.346e-07  11.691  1.731e-07   35.620  9.008e-08
  47. 8           b3=0   33.857  2.124e-07  11.315  2.929e-07   34.639  1.452e-07
  48. """

  49. print(result.reslinear_test)  # 残差线性检验
  50. """
  51.               H0      LM  LM.prob      F  F.prob      LR  LR.prob
  52. 0           b1=0   2.397    0.302  1.163   0.313   2.401    0.301
  53. 1        b1=b2=0   6.825    0.145  1.660   0.157   6.856    0.144
  54. 2     b1=b2=b3=0   8.613    0.197  1.396   0.213   8.663    0.193
  55. 3  b1=b2=b3=b4=0  15.912    0.044  1.948   0.050  16.082    0.041
  56. 4   b1=b3=0(HoL)  10.262    0.036  2.494   0.042  10.332    0.035
  57. 5   b2=b4=0(HoE)   8.788    0.067  2.132   0.075   8.840    0.065
  58. 6   b1=0|b2=b3=0   2.397    0.302  1.163   0.313   2.397    0.302
  59. 7      b2=0|b3=0   4.442    0.109  2.154   0.117   4.455    0.108
  60. 8           b3=0   1.805    0.406  0.870   0.420   1.807    0.405
  61. """

  62. print(result.pconstant_test)  # 参数固定性检验
  63. """
  64.               H0       LM    LM.prob        F     F.prob       LR    LR.prob
  65. 0           b1=0  172.195  0.000e+00  107.805  0.000e+00  195.407  0.000e+00
  66. 1        b1=b2=0  177.011  0.000e+00   55.718  0.000e+00  201.669  0.000e+00
  67. 2     b1=b2=b3=0  197.735  0.000e+00   42.917  0.000e+00  229.225  0.000e+00
  68. 3  b1=b2=b3=b4=0  209.965  0.000e+00   34.848  0.000e+00  245.971  0.000e+00
  69. 4   b1=b3=0(HoL)   50.285  3.149e-10   12.915  3.664e-10   52.035  1.356e-10
  70. 5   b2=b4=0(HoE)   38.449  9.052e-08    9.712  1.178e-07   39.461  5.594e-08
  71. 6   b1=0|b2=b3=0  172.195  0.000e+00  107.805  0.000e+00  172.195  0.000e+00
  72. 7      b2=0|b3=0    6.236  4.424e-02    3.032  4.884e-02    6.262  4.367e-02
  73. 8           b3=0   27.060  1.330e-06   13.494  1.761e-06   27.556  1.038e-06
  74. """

  75. # 转换函数图
  76. plt.scatter(df["q"].values, result.g[:, 0])
  77. plt.show()
复制代码
已有 1 人评分学术水平 热心指数 信用等级 收起 理由
Sunknownay + 3 + 3 + 3 鼓励积极发帖讨论

总评分: 学术水平 + 3  热心指数 + 3  信用等级 + 3   查看全部评分

板凳
1258225671 发表于 2022-4-16 16:15:10
转换函数图:

pstr.png (14.99 KB)

pstr.png

报纸
1258225671 发表于 2022-4-16 21:48:55
后面我会把源代码文件和dll文件传上来。

地板
hifinecon 发表于 2022-4-17 08:25:54

7
qibijing3 发表于 2022-4-17 09:15:03
你好,那个模块是个本地模块吗?可以分享一下吗?可以有偿

8
1258225671 发表于 2022-4-17 09:55:08
qibijing3 发表于 2022-4-17 09:15
你好,那个模块是个本地模块吗?可以分享一下吗?可以有偿
对的,是本地程序包。

9
1258225671 发表于 2022-5-2 18:04:17
matlab版的程序我也做好了:
https://bbs.pinggu.org/thread-10999026-1-1.html

10
hewenhaidulang 学生认证  发表于 2022-5-5 14:03:25
楼主您好,可否分享一下python程序,可有偿,十分感谢哈
邮箱:sdfsdvdksfhsd@163.com

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-3 22:20