計量經濟學

R中prodest包中的不平衡面板數據

  • December 23, 2020

我有一個關於使用prodest包使用不平衡面板數據進行 TFP 估計的問題。

數據集可以在這裡找到:https ://drive.google.com/file/d/1W5pva05hRiruo1AMNc62ln0GNtcVr5p6/view?usp=sharing

從數據集中可以看出,有很多公司在特定年份沒有報告某些值,最終得到不平衡的面板數據。

程式碼如下。但是,如果我不過濾大於 0 值的數據,我會收到來自 TFP 估計的錯誤消息,說有 NaN。

remove(list=ls())

library(plm)
library(dplyr)
library(ggplot2)
library(prodest)


pckg<-c("plm","readxl","dplyr","ggplot2","prodest")
#install.packages(c("plm","readxl","dplyr","ggplot2","prodest"))
lapply(pckg, require, character.only = TRUE)

# Set the working directory
setwd("C:/Users/vadya/Desktop/LT original currency")

# Downloading the survey data
Data <- read.csv("LToc.csv", header=TRUE, sep=",")
str(Data)

Data$ID<-as.numeric(as.factor(Data$ID))

summary(Data)

# Creating a panel data frame

DataA <- Data %>% 
 #filter(NACE == 'A') %>% 
 #filter(TURN > 0, TFA > 0, FA > 0, VA > 0, L > 0, M > 0) %>%
 mutate(ID = ID,
        Year = Year,
        turn = log(TURN),
        tfa = log(TFA),
        fa = log(FA),
        va = log(VA),
        cogs = log(COGS))
        #l = log(L),
        #m = log(M))
################################################################################################

mod2ACF <-  prodest::prodestACF(DataA$va, fX = DataA$cogs, sX = DataA$tfa, pX = DataA$cogs, idvar = DataA$ID, timevar = DataA$Year, 
                               R = 100, cX = NULL, opt = 'optim', theta0 = NULL, cluster = NULL)  

mod2ACF
omegaACF <- prodest::omega(mod2ACF)
summary(mod2ACF)
summary(omegaACF)


mod2W <-  prodest::prodestWRDG(DataA$turn, fX = DataA$cogs, sX = DataA$tfa, pX = DataA$cogs, idvar = DataA$ID, timevar = DataA$Year, 
                              cX = NULL)  
mod2W
omegaW <- prodest::omega(mod2W)
summary(mod2W)
summary(omegaW)

####################################################################################################################################

如果我不過濾數據幀,在 TFP 估計部分(例如,ACF 方法)我會收到以下錯誤消息。

在此處輸入圖像描述

我做錯了什麼嗎,有沒有辦法讓prodest函式處理不平衡的面板數據?

提前感謝您的想法!非常感謝您的關心!

我們通過 Pandas 在 Python 中使用的一種常見技術是引入均值、中位數和眾數(取決於資料結構)來代替這些缺失值。

另一個很棒的技術是通過回歸模型引入擬合值,從而預測缺失值。在這種情況下,您需要一個命令來刪除您的 NaN、估計模型並用它們的擬合值替換空單元格。根據您的資料結構,您可能會遇到此技術的問題。

作為最後的評論,我建議您使用 Python。這是相關的網站

引用自:https://economics.stackexchange.com/questions/41752