1 DATA LAODING

library(bruceR)
library(metafor) # standard meta-analyses
library(xlsx)
library(stringr)
library(robumeta) # package for RVE meta-analyses
library(clubSandwich)
# Yongxuan
data <- import("JIBSb6.csv") %>% setDT()
# Yongxuan https://docs.google.com/spreadsheets/d/12jjiYohd_QHxyAaX_S5jYxqZ6J4HnrzL/edit?usp=sharing&ouid=115346063709313800668&rtpof=true&sd=true
LBsR_aaa <- data[, .SD, .SDcols = patterns("aaa")]
# str(LBsR_aaa)

# 删除 ib1 变量中值为缺失的行
LBsR <- data[!is.na(ib1)] %>%
  .[relation != ""] %>% # 清除不用的数据(Yongxuan)# 删除 relation 为空字符串的行
  .[analysiscategory1 == "behavior", analysiscategory1 := "behaviors"] %>%
  .[analysiscategory2 == "behavior", analysiscategory2 := "behaviors"] %>%
  .[, analysiscategory1 := toupper(analysiscategory1)] %>%
  .[, analysiscategory2 := toupper(analysiscategory2)] %>%
  .[, aaa.analysisvariable1 := tolower(aaa.analysisvariable1)] %>%
  .[, aaa.analysisvariable2 := tolower(aaa.analysisvariable2)] %>%
  .[
    aaa.analysisvariable1 %in% c("commitment", "job involvement", "withdraw"),
    analysiscategory1 := "WORKPLACE ATTACHMENT"
  ] %>%
  .[
    aaa.analysisvariable1 %in% c("exchange fairness", "perception of support", "perceptions of support"),
    analysiscategory1 := "SOCIAL EXCHANGE AT WORKPLACE"
  ] %>%
  .[
    aaa.analysisvariable2 %in% c("commitment", "job involvement", "withdraw"),
    analysiscategory2 := "WORKPLACE ATTACHMENT"
  ] %>%
  .[
    aaa.analysisvariable2 %in% c("exchange fairness", "perception of support", "perceptions of support"),
    analysiscategory2 := "SOCIAL EXCHANGE AT WORKPLACE"
  ] %>%
  .[, XX := pmin(analysiscategory1, analysiscategory2)] %>%
  .[, YY := pmax(analysiscategory1, analysiscategory2)] %>%
  .[order(XX, YY)] %>%
  # .[, cc("analysiscategory1,analysiscategory2") := NULL]%>%
  # setnames(old = c("X", "Y"), new = cc("analysiscategory1,analysiscategory2"))%>%
  .[analysiscategory1 == "DETERING INSTITUTIONAL FACTOR", aaa.analysisvariable1 := "detering institutional factor"] %>%
  .[analysiscategory2 == "DETERING INSTITUTIONAL FACTOR", aaa.analysisvariable2 := "detering institutional factor"] %>%
  .[analysiscategory1 == "ATTRACTING INSTITUTIONAL FACTOR", aaa.analysisvariable1 := "attracting institutional factor"] %>%
  .[analysiscategory2 == "ATTRACTING INSTITUTIONAL FACTOR", aaa.analysisvariable2 := "attracting institutional factor"] %>%
  .[, ordervariable1:= paste(aaa.analysisvariable1,analysiscategory1, sep = "@")]%>%
  .[, ordervariable2:= paste(aaa.analysisvariable2,analysiscategory2, sep = "@")]%>%
  .[, ordervariablefactor1:= paste(ordervariable1,aaa.variable1, sep = "&")]%>%
  .[, ordervariablefactor2:= paste(ordervariable2,aaa.variable2, sep = "&")]%>%#包含variable,category,factor
  .[, Xx := pmin(ordervariable1,ordervariable2)] %>%
  .[, Yy := pmax(ordervariable1,ordervariable2)]#只包含variable,category
  
   # .[, Xx := pmin(aaa.analysisvariable1, aaa.analysisvariable2)] %>%
   # .[, Yy := pmax(aaa.analysisvariable1, aaa.analysisvariable2)] # %>%
  # .[, Xx:= aaa.analysisvariable1] %>%
  # .[, Yy:= aaa.analysisvariable2] 
# .[order(Xx, Yy)]%>%
# .[, cc("aaa.analysisvariable1,aaa.analysisvariable2") := NULL]%>%
# setnames(old = c("Xx", "Yy"), new = cc("aaa.analysisvariable1,aaa.analysisvariable2"))

LBsR[LBsR == ""] <- NA
LBsR2 <- LBsR
# names(LBsR)

2 DATA STRUCTURE

LBsR <- LBsR[, CheckMissingR := rowSums(!is.na(.SD)), .SDcols = c("aaa.hsraw.r", "aaa.hscorrected.r", "aaa.horaw.r", "aaa.hocorrected.r")]
# [, CheckMissingR := rowSums(is.na(.SD)), .SDcols = c("aaa.hsraw.r", "aaa.hscorrected.r",
#                                                         "aaa.horaw.r", "aaa.hocorrected.r")]#%>%
Freq(LBsR$CheckMissingR)
## Frequency Statistics:
## ───────────
##      N    %
## ───────────
## 1  668 49.0
## 2  694 51.0
## ───────────
## Total N = 1,362
#print_table(LBsR[CheckMissingR == 0, .(caseid, aaa.analysisvariable1, aaa.analysisvariable2, CheckMissingR)], row.names = F) # ,aaa.hsraw.r,aaa.hscorrected.r,aaa.horaw.r,aaa.hocorrected.r

3 Categories variables and correlates

LBsR <- LBsR[, CategoriesVariablesCorrelates1 := paste(relation, analysiscategory1, aaa.analysisvariable1, aaa.variable1, sep = "#")] %>%
  .[, CategoriesVariablesCorrelates2 := paste(relation, analysiscategory2, aaa.analysisvariable2, aaa.variable2, sep = "#")]
CategoriesVariables <- rbind(as.data.table(LBsR$CategoriesVariablesCorrelates1), as.data.table(LBsR$CategoriesVariablesCorrelates2))

## cat("TABLE 3. All countries")
# Table=FreqT(LBsR$RelationCorrelates)

3.1 IB Variables

# Table=FreqT(CategoriesVariables[grepl("IB#|IBOB#", V1), ]$V1)
unique(CategoriesVariables[grepl("IB#|IBOB#", V1), ]$V1) %>% sort()
##   [1] "IB#ATTRACTING INSTITUTIONAL FACTOR#attracting institutional factor#Customer demand"                                 
##   [2] "IB#ATTRACTING INSTITUTIONAL FACTOR#attracting institutional factor#democratic institution"                          
##   [3] "IB#ATTRACTING INSTITUTIONAL FACTOR#attracting institutional factor#FDI attractiveness"                              
##   [4] "IB#ATTRACTING INSTITUTIONAL FACTOR#attracting institutional factor#institutional quality"                           
##   [5] "IB#ATTRACTING INSTITUTIONAL FACTOR#attracting institutional factor#political stability"                             
##   [6] "IB#ATTRACTING INSTITUTIONAL FACTOR#attracting institutional factor#Regulation"                                      
##   [7] "IB#ATTRACTING INSTITUTIONAL FACTOR#attracting institutional factor#rule of law"                                     
##   [8] "IB#ATTRACTING INSTITUTIONAL FACTOR#attracting institutional factor#Stakeholder norms"                               
##   [9] "IB#ATTRACTING INSTITUTIONAL FACTOR#attracting institutional factor#Subsidy"                                         
##  [10] "IB#COMPETITIVE ADVANTAGES#organizational capability#Absorptive capacity(ACAP)"                                      
##  [11] "IB#COMPETITIVE ADVANTAGES#organizational capability#Dynamic capabilities"                                           
##  [12] "IB#COMPETITIVE ADVANTAGES#organizational capability#Efficiency"                                                     
##  [13] "IB#COMPETITIVE ADVANTAGES#organizational capability#Firm Capabilities"                                              
##  [14] "IB#COMPETITIVE ADVANTAGES#organizational capability#governance structures"                                          
##  [15] "IB#COMPETITIVE ADVANTAGES#organizational capability#hierarchical governance"                                        
##  [16] "IB#COMPETITIVE ADVANTAGES#organizational capability#organizational capabilities"                                    
##  [17] "IB#COMPETITIVE ADVANTAGES#organizational capability#relational governance"                                          
##  [18] "IB#COMPETITIVE ADVANTAGES#organizational capability#Strategic Capabilities"                                         
##  [19] "IB#COMPETITIVE ADVANTAGES#organizational capability#technological capabilities"                                     
##  [20] "IB#COMPETITIVE ADVANTAGES#organizational resource#assest specificity"                                               
##  [21] "IB#COMPETITIVE ADVANTAGES#organizational resource#breadth of knowledge sources"                                     
##  [22] "IB#COMPETITIVE ADVANTAGES#organizational resource#Business ties"                                                    
##  [23] "IB#COMPETITIVE ADVANTAGES#organizational resource#Cohesive Networks"                                                
##  [24] "IB#COMPETITIVE ADVANTAGES#organizational resource#Corporate Reputation"                                             
##  [25] "IB#COMPETITIVE ADVANTAGES#organizational resource#Diverse Networks"                                                 
##  [26] "IB#COMPETITIVE ADVANTAGES#organizational resource#firm size"                                                        
##  [27] "IB#COMPETITIVE ADVANTAGES#organizational resource#Firm Size"                                                        
##  [28] "IB#COMPETITIVE ADVANTAGES#organizational resource#Inter-organizational Trust"                                       
##  [29] "IB#COMPETITIVE ADVANTAGES#organizational resource#Knowledge-Friendly Organisational Culture"                        
##  [30] "IB#COMPETITIVE ADVANTAGES#organizational resource#Long-term institutional ownership"                                
##  [31] "IB#COMPETITIVE ADVANTAGES#organizational resource#Media Visibility"                                                 
##  [32] "IB#COMPETITIVE ADVANTAGES#organizational resource#Non-VRIN resources"                                               
##  [33] "IB#COMPETITIVE ADVANTAGES#organizational resource#organizational social capital"                                    
##  [34] "IB#COMPETITIVE ADVANTAGES#organizational resource#Political ties"                                                   
##  [35] "IB#COMPETITIVE ADVANTAGES#organizational resource#Resources"                                                        
##  [36] "IB#COMPETITIVE ADVANTAGES#organizational resource#VC investments"                                                   
##  [37] "IB#COMPETITIVE ADVANTAGES#organizational resource#VRIN resources"                                                   
##  [38] "IB#DETERING INSTITUTIONAL FACTOR#detering institutional factor#Contextual distance"                                 
##  [39] "IB#DETERING INSTITUTIONAL FACTOR#detering institutional factor#Corruption"                                          
##  [40] "IB#DETERING INSTITUTIONAL FACTOR#detering institutional factor#Cultural differences"                                
##  [41] "IB#DETERING INSTITUTIONAL FACTOR#detering institutional factor#Cultural Distance"                                   
##  [42] "IB#DETERING INSTITUTIONAL FACTOR#detering institutional factor#Firm Risk"                                           
##  [43] "IB#DETERING INSTITUTIONAL FACTOR#detering institutional factor#host country risk"                                   
##  [44] "IB#DETERING INSTITUTIONAL FACTOR#detering institutional factor#Market Concentration"                                
##  [45] "IB#DETERING INSTITUTIONAL FACTOR#detering institutional factor#Tax rates"                                           
##  [46] "IB#EFFECTIVENESS OF STRATEGIC MANAGEMENT#strategic orientation#blockholders"                                        
##  [47] "IB#EFFECTIVENESS OF STRATEGIC MANAGEMENT#strategic orientation#board independence"                                  
##  [48] "IB#EFFECTIVENESS OF STRATEGIC MANAGEMENT#strategic orientation#board interlock"                                     
##  [49] "IB#EFFECTIVENESS OF STRATEGIC MANAGEMENT#strategic orientation#CEO duality"                                         
##  [50] "IB#EFFECTIVENESS OF STRATEGIC MANAGEMENT#strategic orientation#CEO pay"                                             
##  [51] "IB#EFFECTIVENESS OF STRATEGIC MANAGEMENT#strategic orientation#executive compensation"                              
##  [52] "IB#EFFECTIVENESS OF STRATEGIC MANAGEMENT#strategic orientation#family firms"                                        
##  [53] "IB#EFFECTIVENESS OF STRATEGIC MANAGEMENT#strategic orientation#family involvement"                                  
##  [54] "IB#EFFECTIVENESS OF STRATEGIC MANAGEMENT#strategic orientation#insitutional investors"                              
##  [55] "IB#EFFECTIVENESS OF STRATEGIC MANAGEMENT#strategic orientation#Leadership"                                          
##  [56] "IB#EFFECTIVENESS OF STRATEGIC MANAGEMENT#strategic orientation#managerial ownership"                                
##  [57] "IB#EFFECTIVENESS OF STRATEGIC MANAGEMENT#strategic orientation#Managerial ties"                                     
##  [58] "IB#EFFECTIVENESS OF STRATEGIC MANAGEMENT#strategic orientation#Mindsets of top managers"                            
##  [59] "IB#EFFECTIVENESS OF STRATEGIC MANAGEMENT#strategic orientation#state ownership"                                     
##  [60] "IB#EFFECTIVENESS OF STRATEGIC MANAGEMENT#strategic process#alignment mechanism"                                     
##  [61] "IB#EFFECTIVENESS OF STRATEGIC MANAGEMENT#strategic process#alliance"                                                
##  [62] "IB#EFFECTIVENESS OF STRATEGIC MANAGEMENT#strategic process#Business planning"                                       
##  [63] "IB#EFFECTIVENESS OF STRATEGIC MANAGEMENT#strategic process#Corporate venturing"                                     
##  [64] "IB#EFFECTIVENESS OF STRATEGIC MANAGEMENT#strategic process#environmental management practices"                      
##  [65] "IB#EFFECTIVENESS OF STRATEGIC MANAGEMENT#strategic process#Environmental management system(EMS)"                    
##  [66] "IB#EFFECTIVENESS OF STRATEGIC MANAGEMENT#strategic process#High-performance work practices (HPWPs)"                 
##  [67] "IB#EFFECTIVENESS OF STRATEGIC MANAGEMENT#strategic process#HR practices"                                            
##  [68] "IB#EFFECTIVENESS OF STRATEGIC MANAGEMENT#strategic process#Interorganizational arrangements"                        
##  [69] "IB#EFFECTIVENESS OF STRATEGIC MANAGEMENT#strategic process#investment mechanism"                                    
##  [70] "IB#EFFECTIVENESS OF STRATEGIC MANAGEMENT#strategic process#joint venture"                                           
##  [71] "IB#EFFECTIVENESS OF STRATEGIC MANAGEMENT#strategic process#M&A"                                                     
##  [72] "IB#EFFECTIVENESS OF STRATEGIC MANAGEMENT#strategic process#monitoring mechanism"                                    
##  [73] "IB#EFFECTIVENESS OF STRATEGIC MANAGEMENT#strategic process#Proactive environmental strategies"                      
##  [74] "IB#EFFECTIVENESS OF STRATEGIC MANAGEMENT#strategic process#Productivity Measurement and Enhancement System (ProMES)"
##  [75] "IB#EFFECTIVENESS OF STRATEGIC MANAGEMENT#strategic process#Resource dependence"                                     
##  [76] "IB#EFFECTIVENESS OF STRATEGIC MANAGEMENT#strategic process#Social&Environmental disclosures"                        
##  [77] "IB#EFFECTIVENESS OF STRATEGIC MANAGEMENT#strategic process#Strategic performance measurement systems"               
##  [78] "IB#EFFECTIVENESS OF STRATEGIC MANAGEMENT#strategic process#Strategic renewal"                                       
##  [79] "IB#ORGANIZATIONAL OUTCOME#general performance#Business Performance"                                                 
##  [80] "IB#ORGANIZATIONAL OUTCOME#general performance#corporate performance"                                                
##  [81] "IB#ORGANIZATIONAL OUTCOME#general performance#family firm performance"                                              
##  [82] "IB#ORGANIZATIONAL OUTCOME#general performance#firm performance"                                                     
##  [83] "IB#ORGANIZATIONAL OUTCOME#general performance#Firm performance"                                                     
##  [84] "IB#ORGANIZATIONAL OUTCOME#general performance#Firm Performance"                                                     
##  [85] "IB#ORGANIZATIONAL OUTCOME#general performance#General Performance"                                                  
##  [86] "IB#ORGANIZATIONAL OUTCOME#general performance#organization performance"                                             
##  [87] "IB#ORGANIZATIONAL OUTCOME#general performance#Organizational performance"                                           
##  [88] "IB#ORGANIZATIONAL OUTCOME#general performance#Organizational Performance"                                           
##  [89] "IB#ORGANIZATIONAL OUTCOME#general performance#Overall performance"                                                  
##  [90] "IB#ORGANIZATIONAL OUTCOME#general performance#performance"                                                          
##  [91] "IB#ORGANIZATIONAL OUTCOME#general performance#Performance"                                                          
##  [92] "IB#ORGANIZATIONAL OUTCOME#general performance#Performance-related consequences"                                     
##  [93] "IB#ORGANIZATIONAL OUTCOME#general performance#SME performance"                                                      
##  [94] "IB#ORGANIZATIONAL OUTCOME#general performance#VC funded firm performance"                                           
##  [95] "IB#ORGANIZATIONAL OUTCOME#innovation#Environmental innovation"                                                      
##  [96] "IB#ORGANIZATIONAL OUTCOME#innovation#green innovation"                                                              
##  [97] "IB#ORGANIZATIONAL OUTCOME#innovation#innovation"                                                                    
##  [98] "IB#ORGANIZATIONAL OUTCOME#innovation#Innovation"                                                                    
##  [99] "IB#ORGANIZATIONAL OUTCOME#internationalization#Entry strategy"                                                      
## [100] "IB#ORGANIZATIONAL OUTCOME#internationalization#Export Market Orientation"                                           
## [101] "IB#ORGANIZATIONAL OUTCOME#internationalization#foreign ownership strategy"                                          
## [102] "IB#ORGANIZATIONAL OUTCOME#internationalization#International Business Combination"                                  
## [103] "IB#ORGANIZATIONAL OUTCOME#internationalization#international strategic alliances(ISA) performance"                  
## [104] "IB#ORGANIZATIONAL OUTCOME#internationalization#Internationalization"                                                
## [105] "IB#ORGANIZATIONAL OUTCOME#marketing outcome#accounting performance"                                                 
## [106] "IB#ORGANIZATIONAL OUTCOME#marketing outcome#Customer Commitment"                                                    
## [107] "IB#ORGANIZATIONAL OUTCOME#marketing outcome#Customer Loyalty"                                                       
## [108] "IB#ORGANIZATIONAL OUTCOME#marketing outcome#Customer Trust"                                                         
## [109] "IB#ORGANIZATIONAL OUTCOME#marketing outcome#Economic performance"                                                   
## [110] "IB#ORGANIZATIONAL OUTCOME#marketing outcome#financial performance"                                                  
## [111] "IB#ORGANIZATIONAL OUTCOME#marketing outcome#Financial Performance"                                                  
## [112] "IB#ORGANIZATIONAL OUTCOME#marketing outcome#Financial profitability"                                                
## [113] "IB#ORGANIZATIONAL OUTCOME#marketing outcome#Future Financial Performance"                                           
## [114] "IB#ORGANIZATIONAL OUTCOME#marketing outcome#market performance"                                                     
## [115] "IB#ORGANIZATIONAL OUTCOME#non-marketing outcome#Aesthetic quality"                                                  
## [116] "IB#ORGANIZATIONAL OUTCOME#non-marketing outcome#Corporate social performance"                                       
## [117] "IB#ORGANIZATIONAL OUTCOME#non-marketing outcome#Environment performance"                                            
## [118] "IB#ORGANIZATIONAL OUTCOME#non-marketing outcome#Perceived value"                                                    
## [119] "IB#ORGANIZATIONAL OUTCOME#non-marketing outcome#productivity"                                                       
## [120] "IB#ORGANIZATIONAL OUTCOME#non-marketing outcome#Strategy-related consequences"                                      
## [121] "IB#OTHERS#others#Priori Financial Performance"                                                                      
## [122] "IBOB#COMPETITIVE ADVANTAGES#organizational capability#Contractual governance"                                       
## [123] "IBOB#COMPETITIVE ADVANTAGES#organizational resource#Behavioural intentions"                                         
## [124] "IBOB#COMPETITIVE ADVANTAGES#organizational resource#Collective Employee Turnover"                                   
## [125] "IBOB#COMPETITIVE ADVANTAGES#organizational resource#collective turnover"                                            
## [126] "IBOB#COMPETITIVE ADVANTAGES#organizational resource#Emotional intelligence"                                         
## [127] "IBOB#COMPETITIVE ADVANTAGES#organizational resource#Employee performance"                                           
## [128] "IBOB#COMPETITIVE ADVANTAGES#organizational resource#Employee satisfaction"                                          
## [129] "IBOB#COMPETITIVE ADVANTAGES#organizational resource#Entrepreneurial Self Efficacy"                                  
## [130] "IBOB#COMPETITIVE ADVANTAGES#organizational resource#Intra-organizational Trust"                                     
## [131] "IBOB#COMPETITIVE ADVANTAGES#organizational resource#Management support"                                             
## [132] "IBOB#COMPETITIVE ADVANTAGES#organizational resource#Organizational commitment"                                      
## [133] "IBOB#COMPETITIVE ADVANTAGES#organizational resource#Trust"                                                          
## [134] "IBOB#ORGANIZATIONAL OUTCOME#general performance#firm performance"                                                   
## [135] "IBOB#ORGANIZATIONAL OUTCOME#general performance#Firm performance"                                                   
## [136] "IBOB#ORGANIZATIONAL OUTCOME#general performance#Firm Performance"                                                   
## [137] "IBOB#ORGANIZATIONAL OUTCOME#general performance#Organizational performance"                                         
## [138] "IBOB#ORGANIZATIONAL OUTCOME#general performance#Organizational Performance"                                         
## [139] "IBOB#ORGANIZATIONAL OUTCOME#innovation#Service innovation"                                                          
## [140] "IBOB#ORGANIZATIONAL OUTCOME#non-marketing outcome#Aesthetic quality"                                                
## [141] "IBOB#ORGANIZATIONAL OUTCOME#non-marketing outcome#Core product quality"                                             
## [142] "IBOB#ORGANIZATIONAL OUTCOME#non-marketing outcome#service quality"

3.2 OB Variables

# Table=Freq(CategoriesVariables[grepl("OB#|IBOB.o#", V1), ]$V1)
unique(CategoriesVariables[grepl("OB#|IBOB.o#", V1), ]$V1) %>% sort()
##   [1] "IBOB.o#BEHAVIORS#discretionary performance#Service innovation"                                                   
##   [2] "IBOB.o#BEHAVIORS#task performance#Employee performance"                                                          
##   [3] "IBOB.o#HUMAN CAPITAL#ksao#Emotional intelligence"                                                                
##   [4] "IBOB.o#MOTIVATION#motivation to work#Entrepreneurial Self Efficacy"                                              
##   [5] "IBOB.o#MOTIVATION#motivation to work#Intra-organizational Trust"                                                 
##   [6] "IBOB.o#MOTIVATION#motivation to work#Trust"                                                                      
##   [7] "IBOB.o#MOTIVATION#satisfaction#Employee satisfaction"                                                            
##   [8] "IBOB.o#ORGANIZATIONAL OUTCOME#general performance#firm performance"                                              
##   [9] "IBOB.o#ORGANIZATIONAL OUTCOME#general performance#Firm performance"                                              
##  [10] "IBOB.o#ORGANIZATIONAL OUTCOME#general performance#Firm Performance"                                              
##  [11] "IBOB.o#ORGANIZATIONAL OUTCOME#general performance#Organizational performance"                                    
##  [12] "IBOB.o#ORGANIZATIONAL OUTCOME#general performance#Organizational Performance"                                    
##  [13] "IBOB.o#ORGANIZATIONAL OUTCOME#non-marketing outcome#Aesthetic quality"                                           
##  [14] "IBOB.o#ORGANIZATIONAL OUTCOME#non-marketing outcome#Core product quality"                                        
##  [15] "IBOB.o#ORGANIZATIONAL OUTCOME#non-marketing outcome#service quality"                                             
##  [16] "IBOB.o#OTHERS#others#Behavioural intentions"                                                                     
##  [17] "IBOB.o#OTHERS#others#Contractual governance"                                                                     
##  [18] "IBOB.o#SOCIAL EXCHANGE AT WORKPLACE#perceptions of support#Management support"                                   
##  [19] "IBOB.o#WORKPLACE ATTACHMENT#commitment#Organizational commitment"                                                
##  [20] "IBOB.o#WORKPLACE ATTACHMENT#withdraw#Collective Employee Turnover"                                               
##  [21] "IBOB.o#WORKPLACE ATTACHMENT#withdraw#collective turnover"                                                        
##  [22] "IBOB#COMPETITIVE ADVANTAGES#organizational capability#Contractual governance"                                    
##  [23] "IBOB#COMPETITIVE ADVANTAGES#organizational resource#Behavioural intentions"                                      
##  [24] "IBOB#COMPETITIVE ADVANTAGES#organizational resource#Collective Employee Turnover"                                
##  [25] "IBOB#COMPETITIVE ADVANTAGES#organizational resource#collective turnover"                                         
##  [26] "IBOB#COMPETITIVE ADVANTAGES#organizational resource#Emotional intelligence"                                      
##  [27] "IBOB#COMPETITIVE ADVANTAGES#organizational resource#Employee performance"                                        
##  [28] "IBOB#COMPETITIVE ADVANTAGES#organizational resource#Employee satisfaction"                                       
##  [29] "IBOB#COMPETITIVE ADVANTAGES#organizational resource#Entrepreneurial Self Efficacy"                               
##  [30] "IBOB#COMPETITIVE ADVANTAGES#organizational resource#Intra-organizational Trust"                                  
##  [31] "IBOB#COMPETITIVE ADVANTAGES#organizational resource#Management support"                                          
##  [32] "IBOB#COMPETITIVE ADVANTAGES#organizational resource#Organizational commitment"                                   
##  [33] "IBOB#COMPETITIVE ADVANTAGES#organizational resource#Trust"                                                       
##  [34] "IBOB#ORGANIZATIONAL OUTCOME#general performance#firm performance"                                                
##  [35] "IBOB#ORGANIZATIONAL OUTCOME#general performance#Firm performance"                                                
##  [36] "IBOB#ORGANIZATIONAL OUTCOME#general performance#Firm Performance"                                                
##  [37] "IBOB#ORGANIZATIONAL OUTCOME#general performance#Organizational performance"                                      
##  [38] "IBOB#ORGANIZATIONAL OUTCOME#general performance#Organizational Performance"                                      
##  [39] "IBOB#ORGANIZATIONAL OUTCOME#innovation#Service innovation"                                                       
##  [40] "IBOB#ORGANIZATIONAL OUTCOME#non-marketing outcome#Aesthetic quality"                                             
##  [41] "IBOB#ORGANIZATIONAL OUTCOME#non-marketing outcome#Core product quality"                                          
##  [42] "IBOB#ORGANIZATIONAL OUTCOME#non-marketing outcome#service quality"                                               
##  [43] "OB#BEHAVIORS#discretionary performance#Communication"                                                            
##  [44] "OB#BEHAVIORS#discretionary performance#counterproductive work behavior"                                          
##  [45] "OB#BEHAVIORS#discretionary performance#creativity"                                                               
##  [46] "OB#BEHAVIORS#discretionary performance#Creativity"                                                               
##  [47] "OB#BEHAVIORS#discretionary performance#Individual-level employee innovation"                                     
##  [48] "OB#BEHAVIORS#discretionary performance#innovation"                                                               
##  [49] "OB#BEHAVIORS#discretionary performance#knowledge sharing"                                                        
##  [50] "OB#BEHAVIORS#discretionary performance#Knowledge sharing"                                                        
##  [51] "OB#BEHAVIORS#discretionary performance#Negotiation Performance"                                                  
##  [52] "OB#BEHAVIORS#discretionary performance#OCB"                                                                      
##  [53] "OB#BEHAVIORS#discretionary performance#OCB-Inclusive role breadth"                                               
##  [54] "OB#BEHAVIORS#discretionary performance#OCBI"                                                                     
##  [55] "OB#BEHAVIORS#discretionary performance#OCBO"                                                                     
##  [56] "OB#BEHAVIORS#discretionary performance#open-minded discussion"                                                   
##  [57] "OB#BEHAVIORS#discretionary performance#organization directed deviance"                                           
##  [58] "OB#BEHAVIORS#discretionary performance#organizational citizenship behavior"                                      
##  [59] "OB#BEHAVIORS#discretionary performance#Organizational citizenship behavior"                                      
##  [60] "OB#BEHAVIORS#discretionary performance#Pro-environmental behaviour"                                              
##  [61] "OB#BEHAVIORS#discretionary performance#Supervisor-directed deviance"                                             
##  [62] "OB#BEHAVIORS#discretionary performance#Voice"                                                                    
##  [63] "OB#BEHAVIORS#task performance#Individual performance"                                                            
##  [64] "OB#BEHAVIORS#task performance#job performance"                                                                   
##  [65] "OB#BEHAVIORS#task performance#Job performance"                                                                   
##  [66] "OB#BEHAVIORS#task performance#Job Performance"                                                                   
##  [67] "OB#BEHAVIORS#task performance#Objective performance"                                                             
##  [68] "OB#BEHAVIORS#task performance#Overall job performance"                                                           
##  [69] "OB#BEHAVIORS#task performance#Performance"                                                                       
##  [70] "OB#BEHAVIORS#task performance#Subjective Performance"                                                            
##  [71] "OB#BEHAVIORS#task performance#Subjective team performance"                                                       
##  [72] "OB#BEHAVIORS#task performance#Subordinate work performance"                                                      
##  [73] "OB#BEHAVIORS#task performance#Task performance"                                                                  
##  [74] "OB#BEHAVIORS#task performance#Task Performance"                                                                  
##  [75] "OB#CONSTRUCTIVE LEADERSHIP#abusive supervision#abusive supervision"                                              
##  [76] "OB#CONSTRUCTIVE LEADERSHIP#abusive supervision#leader mistreatment"                                              
##  [77] "OB#CONSTRUCTIVE LEADERSHIP#change-oriented leader behavior#perception of transformational/charismatic leadership"
##  [78] "OB#CONSTRUCTIVE LEADERSHIP#change-oriented leader behavior#Romance of Leadership"                                
##  [79] "OB#CONSTRUCTIVE LEADERSHIP#change-oriented leader behavior#supervisor transformational leadership"               
##  [80] "OB#CONSTRUCTIVE LEADERSHIP#change-oriented leader behavior#Transformational Leadership"                          
##  [81] "OB#CONSTRUCTIVE LEADERSHIP#relational-oriented leader behavior#Leader Member Exchange"                           
##  [82] "OB#CONSTRUCTIVE LEADERSHIP#relational-oriented leader behavior#leader-member exchange"                           
##  [83] "OB#CONSTRUCTIVE LEADERSHIP#relational-oriented leader behavior#Leader–Member Exchange"                           
##  [84] "OB#CONSTRUCTIVE LEADERSHIP#relational-oriented leader behavior#LMX"                                              
##  [85] "OB#CONSTRUCTIVE LEADERSHIP#relational-oriented leader behavior#Person-focused leader behaviors"                  
##  [86] "OB#CONSTRUCTIVE LEADERSHIP#relational-oriented leader behavior#Person-focused leadership"                        
##  [87] "OB#CONSTRUCTIVE LEADERSHIP#task-oriented behavior#Tasked-focused leadership"                                     
##  [88] "OB#CONSTRUCTIVE LEADERSHIP#value-based and moral leader behavior#Servant leadership"                             
##  [89] "OB#HEALTH#stress#(reduced) personal accomplishment"                                                              
##  [90] "OB#HEALTH#stress#burnout"                                                                                        
##  [91] "OB#HEALTH#stress#depersonalisation"                                                                              
##  [92] "OB#HEALTH#stress#depersonalization"                                                                              
##  [93] "OB#HEALTH#stress#depression"                                                                                     
##  [94] "OB#HEALTH#stress#emotional exhaustion"                                                                           
##  [95] "OB#HEALTH#stress#Emotional exhaustion"                                                                           
##  [96] "OB#HEALTH#stress#Emotional Exhaustion"                                                                           
##  [97] "OB#HEALTH#stress#Family interference with work"                                                                  
##  [98] "OB#HEALTH#stress#Home/family strain"                                                                             
##  [99] "OB#HEALTH#stress#Job demands "                                                                                   
## [100] "OB#HEALTH#stress#Negative family-to-work spillover"                                                              
## [101] "OB#HEALTH#stress#negative state"                                                                                 
## [102] "OB#HEALTH#stress#Negative work-to-family spillover"                                                              
## [103] "OB#HEALTH#stress#Overall Role Stress"                                                                            
## [104] "OB#HEALTH#stress#Psychological Distress"                                                                         
## [105] "OB#HEALTH#stress#Role ambiguity"                                                                                 
## [106] "OB#HEALTH#stress#Role Ambiguity"                                                                                 
## [107] "OB#HEALTH#stress#Role conflict"                                                                                  
## [108] "OB#HEALTH#stress#Role Conflict"                                                                                  
## [109] "OB#HEALTH#stress#Role Overload"                                                                                  
## [110] "OB#HEALTH#stress#self-regulatory capacity impairment"                                                            
## [111] "OB#HEALTH#stress#state negative affect"                                                                          
## [112] "OB#HEALTH#stress#Stress"                                                                                         
## [113] "OB#HEALTH#stress#Work interference with family"                                                                  
## [114] "OB#HEALTH#stress#Work strain"                                                                                    
## [115] "OB#HEALTH#well-being#Family Satisfaction"                                                                        
## [116] "OB#HEALTH#well-being#family-work enrichment"                                                                     
## [117] "OB#HEALTH#well-being#Family-Work Enrichment"                                                                     
## [118] "OB#HEALTH#well-being#Home support"                                                                               
## [119] "OB#HEALTH#well-being#Life satisfaction"                                                                          
## [120] "OB#HEALTH#well-being#Mental health & well-being"                                                                 
## [121] "OB#HEALTH#well-being#mental health problem"                                                                      
## [122] "OB#HEALTH#well-being#Positive family-to-work spillover"                                                          
## [123] "OB#HEALTH#well-being#Positive work-to-family spillover"                                                          
## [124] "OB#HEALTH#well-being#Self-enjoyment"                                                                             
## [125] "OB#HEALTH#well-being#Subjective Well-being"                                                                      
## [126] "OB#HEALTH#well-being#Support from home"                                                                          
## [127] "OB#HEALTH#well-being#Work-family enrichment"                                                                     
## [128] "OB#HEALTH#well-being#Work-Family Enrichment"                                                                     
## [129] "OB#HUMAN CAPITAL#ksao#Education"                                                                                 
## [130] "OB#HUMAN CAPITAL#ksao#Emotional Intelligence"                                                                    
## [131] "OB#HUMAN CAPITAL#ksao#Psychological capital"                                                                     
## [132] "OB#HUMAN CAPITAL#working experiences#Organization tenure"                                                        
## [133] "OB#HUMAN CAPITAL#working experiences#Organizational tenure"                                                      
## [134] "OB#HUMAN CAPITAL#working experiences#Position tenure"                                                            
## [135] "OB#MOTIVATION#motivation to work#achievement motivation"                                                         
## [136] "OB#MOTIVATION#motivation to work#Anticipated pay increase/promotion"                                             
## [137] "OB#MOTIVATION#motivation to work#Autonomy"                                                                       
## [138] "OB#MOTIVATION#motivation to work#entrepreneurial intention"                                                      
## [139] "OB#MOTIVATION#motivation to work#Entrepreneurial intention"                                                      
## [140] "OB#MOTIVATION#motivation to work#Intra-organizational Trust"                                                     
## [141] "OB#MOTIVATION#motivation to work#Job Control"                                                                    
## [142] "OB#MOTIVATION#motivation to work#Proactive personality"                                                          
## [143] "OB#MOTIVATION#motivation to work#public service motivation"                                                      
## [144] "OB#MOTIVATION#motivation to work#Self-efficacy"                                                                  
## [145] "OB#MOTIVATION#motivation to work#Social trust"                                                                   
## [146] "OB#MOTIVATION#motivation to work#Trust"                                                                          
## [147] "OB#MOTIVATION#perceived fit#Congruence"                                                                          
## [148] "OB#MOTIVATION#perceived fit#Perceived overqualification"                                                         
## [149] "OB#MOTIVATION#perceived fit#Person–Group (P–G) Fit"                                                              
## [150] "OB#MOTIVATION#perceived fit#Person–Job (P–J) Fit"                                                                
## [151] "OB#MOTIVATION#perceived fit#Person–Organization (P–O) Fit"                                                       
## [152] "OB#MOTIVATION#perceived fit#Person–Supervisor (P–S) Fit"                                                         
## [153] "OB#MOTIVATION#satisfaction#Job & career satisfaction"                                                            
## [154] "OB#MOTIVATION#satisfaction#Job satisfaction"                                                                     
## [155] "OB#MOTIVATION#satisfaction#Job Satisfaction"                                                                     
## [156] "OB#MOTIVATION#satisfaction#Overall job satisfaction"                                                             
## [157] "OB#MOTIVATION#satisfaction#Satisfaction"                                                                         
## [158] "OB#OTHERS#others#actual system use"                                                                              
## [159] "OB#OTHERS#others#Place attachment"                                                                               
## [160] "OB#OTHERS#others#subjective norm"                                                                                
## [161] "OB#OTHERS#others#Subjective norm"                                                                                
## [162] "OB#PERSONAL CHARACTERISTICS#demographics#age"                                                                    
## [163] "OB#PERSONAL CHARACTERISTICS#demographics#Age"                                                                    
## [164] "OB#PERSONAL CHARACTERISTICS#demographics#Female"                                                                 
## [165] "OB#PERSONAL CHARACTERISTICS#demographics#gender"                                                                 
## [166] "OB#PERSONAL CHARACTERISTICS#demographics#Gender"                                                                 
## [167] "OB#PERSONAL CHARACTERISTICS#demographics#Gender Differences"                                                     
## [168] "OB#PERSONAL CHARACTERISTICS#demographics#Gender Diversity"                                                       
## [169] "OB#PLASTICITY#extraversion#Extraversion"                                                                         
## [170] "OB#PLASTICITY#openness to experience#Openness to Experience"                                                     
## [171] "OB#SOCIAL EXCHANGE AT WORKPLACE#exchange fairness#Distributive justice"                                          
## [172] "OB#SOCIAL EXCHANGE AT WORKPLACE#exchange fairness#fairness"                                                      
## [173] "OB#SOCIAL EXCHANGE AT WORKPLACE#exchange fairness#Interactional justice"                                         
## [174] "OB#SOCIAL EXCHANGE AT WORKPLACE#exchange fairness#Organizational Justice"                                        
## [175] "OB#SOCIAL EXCHANGE AT WORKPLACE#exchange fairness#perceptions of unfairness"                                     
## [176] "OB#SOCIAL EXCHANGE AT WORKPLACE#exchange fairness#Procedural justice"                                            
## [177] "OB#SOCIAL EXCHANGE AT WORKPLACE#exchange fairness#Reciprocity"                                                   
## [178] "OB#SOCIAL EXCHANGE AT WORKPLACE#perception of support#Perceived organizational support"                          
## [179] "OB#SOCIAL EXCHANGE AT WORKPLACE#perception of support#Perceived supervisor support"                              
## [180] "OB#SOCIAL EXCHANGE AT WORKPLACE#perception of support#Rewards"                                                   
## [181] "OB#SOCIAL EXCHANGE AT WORKPLACE#perceptions of support#Idiosyncratic deals"                                      
## [182] "OB#SOCIAL EXCHANGE AT WORKPLACE#perceptions of support#Organizational support"                                   
## [183] "OB#SOCIAL EXCHANGE AT WORKPLACE#perceptions of support#perceived organizational support"                         
## [184] "OB#SOCIAL EXCHANGE AT WORKPLACE#perceptions of support#Service climate"                                          
## [185] "OB#SOCIAL EXCHANGE AT WORKPLACE#perceptions of support#Support for change"                                       
## [186] "OB#SOCIAL EXCHANGE AT WORKPLACE#perceptions of support#Support from work"                                        
## [187] "OB#SOCIAL EXCHANGE AT WORKPLACE#perceptions of support#workplace Support"                                        
## [188] "OB#STABILITY#agreeableness#Agreeableness"                                                                        
## [189] "OB#STABILITY#conscientiousness#Conscientiousness"                                                                
## [190] "OB#STABILITY#emotional stability#Emotional Stability"                                                            
## [191] "OB#STABILITY#neuroticism#Neuroticism"                                                                            
## [192] "OB#TEAM EFFECTIVENESS#team effectiveness#Collective turnover"                                                    
## [193] "OB#TEAM EFFECTIVENESS#team effectiveness#Overall team performance"                                               
## [194] "OB#TEAM EFFECTIVENESS#team effectiveness#Team Effectiveness"                                                     
## [195] "OB#TEAM EFFECTIVENESS#team effectiveness#Team performance"                                                       
## [196] "OB#TEAM EFFECTIVENESS#team effectiveness#Team-level employee innovation"                                         
## [197] "OB#TEAM INPUT#team composition#Cultural diversity"                                                               
## [198] "OB#TEAM INPUT#team structure#Competitive goal interdependence"                                                   
## [199] "OB#TEAM INPUT#team structure#Cooperative goal interdependence"                                                   
## [200] "OB#TEAM INPUT#team structure#Independent goal interdependence"                                                   
## [201] "OB#TEAM INPUT#team structure#Outcome interdependence"                                                            
## [202] "OB#TEAM INPUT#team structure#Task interdependence"                                                               
## [203] "OB#TEAM MEDIATOR#emerging state#collective attitudes/perception"                                                 
## [204] "OB#TEAM MEDIATOR#emerging state#Relationship quality"                                                            
## [205] "OB#TEAM MEDIATOR#emerging state#Social integration"                                                              
## [206] "OB#TEAM MEDIATOR#emerging state#Social network"                                                                  
## [207] "OB#TEAM MEDIATOR#team process#Conflict"                                                                          
## [208] "OB#TEAM MEDIATOR#team process#Relational team functioning"                                                       
## [209] "OB#TEAM MEDIATOR#team process#Task-focused team functioning"                                                     
## [210] "OB#WORKPLACE ATTACHMENT#commitment#affective commitment"                                                         
## [211] "OB#WORKPLACE ATTACHMENT#commitment#Affective commitment"                                                         
## [212] "OB#WORKPLACE ATTACHMENT#commitment#Affective commitment to change"                                               
## [213] "OB#WORKPLACE ATTACHMENT#commitment#Affective Commitment to the Organization"                                     
## [214] "OB#WORKPLACE ATTACHMENT#commitment#affective organizational commitment"                                          
## [215] "OB#WORKPLACE ATTACHMENT#commitment#Commitment"                                                                   
## [216] "OB#WORKPLACE ATTACHMENT#commitment#Commitment to change"                                                         
## [217] "OB#WORKPLACE ATTACHMENT#commitment#Continuance commitment"                                                       
## [218] "OB#WORKPLACE ATTACHMENT#commitment#Continuance commitment to change"                                             
## [219] "OB#WORKPLACE ATTACHMENT#commitment#Continuance Commitment to the Organization"                                   
## [220] "OB#WORKPLACE ATTACHMENT#commitment#Normative commitment"                                                         
## [221] "OB#WORKPLACE ATTACHMENT#commitment#Normative commitment to change"                                               
## [222] "OB#WORKPLACE ATTACHMENT#commitment#Normative Commitment to the Organization"                                     
## [223] "OB#WORKPLACE ATTACHMENT#commitment#Occupational commitment"                                                      
## [224] "OB#WORKPLACE ATTACHMENT#commitment#Organization Commitment"                                                      
## [225] "OB#WORKPLACE ATTACHMENT#commitment#Organizational commitment"                                                    
## [226] "OB#WORKPLACE ATTACHMENT#commitment#Organizational Commitment"                                                    
## [227] "OB#WORKPLACE ATTACHMENT#commitment#Overall/attitudinal commitment"                                               
## [228] "OB#WORKPLACE ATTACHMENT#job involvement#Job involvement"                                                         
## [229] "OB#WORKPLACE ATTACHMENT#job involvement#Work engagement"                                                         
## [230] "OB#WORKPLACE ATTACHMENT#job involvement#Work Engagement"                                                         
## [231] "OB#WORKPLACE ATTACHMENT#withdraw#absences"                                                                       
## [232] "OB#WORKPLACE ATTACHMENT#withdraw#Intent to quit"                                                                 
## [233] "OB#WORKPLACE ATTACHMENT#withdraw#Overall withdrawal cognition"                                                   
## [234] "OB#WORKPLACE ATTACHMENT#withdraw#personnel changes"                                                              
## [235] "OB#WORKPLACE ATTACHMENT#withdraw#Turnover behavior"                                                              
## [236] "OB#WORKPLACE ATTACHMENT#withdraw#turnover intention"                                                             
## [237] "OB#WORKPLACE ATTACHMENT#withdraw#Turnover intention"                                                             
## [238] "OB#WORKPLACE ATTACHMENT#withdraw#Turnover Intention"

3.3 Categories and variables

3.3.1 Variables reverse coding

3.3.1.1 OB Variables

# # 定义需要反向编码的组合列表(4个部分的字符串)
# reverse_list_obvariables <- c(
#   # "IBOB.o#COMPETITIVE ADVANTAGES#organizational resource#Collective Employee Turnover",#在文字中做过了
#   # "IBOB.o#COMPETITIVE ADVANTAGES#organizational resource#collective turnover",
#   "OB#BEHAVIORS#contextual performance#counterproductive work behavior",
#   "OB#BEHAVIORS#contextual performance#organization directed deviance",
#   "OB#BEHAVIORS#contextual performance#Supervisor-directed deviance",
#   "OB#SOCIAL EXCHANGE AT WORKPLACE#justice#perceptions of unfairness",
#   "OB#TEAM EFFECTIVENESS#team effectiveness#Collective turnover",
#   "OB#TEAM MEDIATOR#team process#Conflict"
# )
# 
# 
# # 增加新列 reverse.VariablesOBX,默认赋值为 1
# LBsR[, reverse.VariablesOBX := 1]
# LBsR[, reverse.VariablesOBY := 1]
# # 
# LBsR[CategoriesVariablesCorrelates1 %in% reverse_list_obvariables, reverse.VariablesOBX := -1]
# LBsR[CategoriesVariablesCorrelates2 %in% reverse_list_obvariables, reverse.VariablesOBY := -1]
# 1. 先把需要“反向编码”的组合放在一个向量中
reverse_pairs <- c(
  "contextual performance#counterproductive work behavior",
  "contextual performance#organization directed deviance",
  "contextual performance#Supervisor-directed deviance",
  "exchange fairness#perceptions of unfairness",
  "team effectiveness#Collective turnover",
  "team process#Conflict",
  "organizational resource#Collective Employee Turnover",
  "organizational resource#collective turnover",
  "perceived fit#Perceived overqualification",
  "well-being#mental health problem"
)

# 2. 给 LBsR 增加一个新列 reverse.VariablesOBX
#    先全部初始化为 0(也可以是 NA 或者其他值)
LBsR$reverse.VariablesOBX <- 1
LBsR$reverse.VariablesOBY <- 1

# 3. 对于那些 (Xx, aaa.variable1) 字符串用 "#" 连接后
#    恰好出现在 reverse_pairs 向量里的行,赋值为 -1
LBsR$reverse.VariablesOBX[
  paste(LBsR$aaa.analysisvariable1, LBsR$aaa.variable1, sep = "#") %in% reverse_pairs
] <- -1

LBsR$reverse.VariablesOBY[
  paste(LBsR$aaa.analysisvariable2, LBsR$aaa.variable2, sep = "#") %in% reverse_pairs
] <- -1

3.3.1.2 IB Variables

# 1. 先把需要“反向编码”的组合放在一个向量中
reverse_pairs_IB <- c(
  "organizational resource#Collective Employee Turnover",
  "organizational resource#collective turnover"
)

# 2. 给 LBsR 增加一个新列 reverse.VariablesOBX
#    先全部初始化为 0(也可以是 NA 或者其他值)
LBsR$reverse.VariablesIBX <- 1
LBsR$reverse.VariablesIBY <- 1

# 3. 对于那些 (Xx, aaa.variable1) 字符串用 "#" 连接后
#    恰好出现在 reverse_pairs 向量里的行,赋值为 -1
LBsR$reverse.VariablesIBX[
  paste(LBsR$aaa.analysisvariable1, LBsR$aaa.variable1, sep = "#") %in% reverse_pairs_IB
] <- -1

LBsR$reverse.VariablesIBY[
  paste(LBsR$aaa.analysisvariable2, LBsR$aaa.variable2, sep = "#") %in% reverse_pairs_IB
] <- -1
write.xlsx(LBsR, "Check1.xlsx", col.names = TRUE, row.names = FALSE)

3.4 Hedges’ g/ Cohen’s d transfer to r

# 构造所有需要查看的 caseid 值的向量
selected_cases <- c(2000,484)

# 筛选出 articleid 在 selected_cases 中的行
subset_data <- LBsR[aaa.articleid %in% selected_cases]

# 查看结果
print(subset_data)
##     caseid aaa.articleid  Coder Coder2      Note  Note2 tableno
##     <char>        <char> <char> <char>    <char> <lgcl>  <char>
##  1:   7505          2000 张娅坤 巫彤彤 效应值是d     NA       2
##  2:   7506          2000 张娅坤 巫彤彤      <NA>     NA       2
##  3:   7507          2000 张娅坤 巫彤彤      <NA>     NA       2
##  4:   7508          2000 张娅坤   <NA>      <NA>     NA       2
##  5:   7509          2000 张娅坤   <NA>      <NA>     NA       2
##  6:   7510          2000 张娅坤   <NA>      <NA>     NA       2
##  7:   7511          2000 张娅坤 巫彤彤      <NA>     NA       2
##  8:   7512          2000 张娅坤 巫彤彤      <NA>     NA       2
##  9:   7513          2000 张娅坤 巫彤彤      <NA>     NA       2
## 10:   7514          2000 张娅坤   <NA>      <NA>     NA       2
## 11:   7515          2000 张娅坤   <NA>      <NA>     NA       2
## 12:   7516          2000 张娅坤   <NA>      <NA>     NA       2
## 13:   6802           484 张娅坤 颉碧艳      <NA>     NA       4
## 14:   6803           484 张娅坤 颉碧艳      <NA>     NA       4
## 15:   6804           484 张娅坤 颉碧艳      <NA>     NA       4
## 16:   6805           484 张娅坤 颉碧艳      <NA>     NA       4
##            subgroup.country            ImputeNote
##                      <char>                <char>
##  1:                    <NA>                  <NA>
##  2:                    <NA>                  <NA>
##  3:                    <NA>                  <NA>
##  4:                    <NA>                  <NA>
##  5:                    <NA>                  <NA>
##  6:                    <NA>                  <NA>
##  7:                    <NA>                  <NA>
##  8:                    <NA>                  <NA>
##  9:                    <NA>                  <NA>
## 10:                    <NA>                  <NA>
## 11:                    <NA>                  <NA>
## 12:                    <NA>                  <NA>
## 13:           United States                  <NA>
## 14: Germany and Switzerland average(Ger and Swit)
## 15:             Netherlands                  <NA>
## 16:                  Sweden                  <NA>
##                                 subgroup.culture   ib1 powerdistance
##                                           <char> <num>         <num>
##  1:                high Hofstede’s Individualism   1.0            NA
##  2:              middle Hofstede’s Individualism   1.0            NA
##  3:                 low Hofstede’s Individualism   1.0            NA
##  4:          high GLOBE’s Assertiveness Practice   0.0            NA
##  5:        middle GLOBE’s Assertiveness Practice   0.0            NA
##  6:           low GLOBE’s Assertiveness Practice   0.0            NA
##  7:   high GLOBE’s Ingroup Collectivism Practice   0.0            NA
##  8: middle GLOBE’s Ingroup Collectivism Practice   0.0            NA
##  9:    low GLOBE’s Ingroup Collectivism Practice   0.0            NA
## 10:                      high Schwartz’s Harmony   0.0            NA
## 11:                    middle Schwartz’s Harmony   0.0            NA
## 12:                       low Schwartz’s Harmony   0.0            NA
## 13:                                         <NA>   1.0          40.0
## 14:                                         <NA>   0.5          34.5
## 15:                                         <NA>   1.0          38.0
## 16:                                         <NA>   1.0          31.0
##     individulism.collectivism masculinity.femininity uncertaintyavoidance
##                         <num>                  <num>                <num>
##  1:                        NA                     NA                   NA
##  2:                        NA                     NA                   NA
##  3:                        NA                     NA                   NA
##  4:                        NA                     NA                   NA
##  5:                        NA                     NA                   NA
##  6:                        NA                     NA                   NA
##  7:                        NA                     NA                   NA
##  8:                        NA                     NA                   NA
##  9:                        NA                     NA                   NA
## 10:                        NA                     NA                   NA
## 11:                        NA                     NA                   NA
## 12:                        NA                     NA                   NA
## 13:                      91.0                     62                 46.0
## 14:                      67.5                     68                 61.5
## 15:                      80.0                     14                 53.0
## 16:                      71.0                      5                 29.0
##     longterm indulgence.restraint aaa.hl.powerdistance
##        <num>                <num>               <char>
##  1:       NA                   NA                 <NA>
##  2:       NA                   NA                 <NA>
##  3:       NA                   NA                 <NA>
##  4:       NA                   NA                 <NA>
##  5:       NA                   NA                 <NA>
##  6:       NA                   NA                 <NA>
##  7:       NA                   NA                 <NA>
##  8:       NA                   NA                 <NA>
##  9:       NA                   NA                 <NA>
## 10:       NA                   NA                 <NA>
## 11:       NA                   NA                 <NA>
## 12:       NA                   NA                 <NA>
## 13:     26.0                   68                  Low
## 14:     78.5                   53                  Low
## 15:     67.0                   68                  Low
## 16:     53.0                   78                  Low
##     aaa.individulism.collectivism aaa.masculinity.femininity
##                            <char>                     <char>
##  1:                  Individulism                       <NA>
##  2:                        middle                       <NA>
##  3:                  Collectivism                       <NA>
##  4:                          <NA>                       <NA>
##  5:                          <NA>                       <NA>
##  6:                          <NA>                       <NA>
##  7:                          <NA>                       <NA>
##  8:                          <NA>                       <NA>
##  9:                          <NA>                       <NA>
## 10:                          <NA>                       <NA>
## 11:                          <NA>                       <NA>
## 12:                          <NA>                       <NA>
## 13:                  Individulism                Masculinity
## 14:                  Individulism                Masculinity
## 15:                  Individulism                 Femininity
## 16:                  Individulism                 Femininity
##     aaa.hl.uncertaintyavoidance aaa.longterm.shortterm aaa.indulgence.restraint
##                          <char>                 <char>                   <char>
##  1:                        <NA>                   <NA>                     <NA>
##  2:                        <NA>                   <NA>                     <NA>
##  3:                        <NA>                   <NA>                     <NA>
##  4:                        <NA>                   <NA>                     <NA>
##  5:                        <NA>                   <NA>                     <NA>
##  6:                        <NA>                   <NA>                     <NA>
##  7:                        <NA>                   <NA>                     <NA>
##  8:                        <NA>                   <NA>                     <NA>
##  9:                        <NA>                   <NA>                     <NA>
## 10:                        <NA>                   <NA>                     <NA>
## 11:                        <NA>                   <NA>                     <NA>
## 12:                        <NA>                   <NA>                     <NA>
## 13:                         Low   ShortTermOrientation               Indulgence
## 14:                        High    LongTermOrientation               Indulgence
## 15:                        High    LongTermOrientation               Indulgence
## 16:                         Low    LongTermOrientation               Indulgence
##                    aaa.theory
##                        <char>
##  1:                      <NA>
##  2:                      <NA>
##  3:                      <NA>
##  4:                      <NA>
##  5:                      <NA>
##  6:                      <NA>
##  7:                      <NA>
##  8:                      <NA>
##  9:                      <NA>
## 10:                      <NA>
## 11:                      <NA>
## 12:                      <NA>
## 13: dynamic capability theory
## 14: dynamic capability theory
## 15: dynamic capability theory
## 16: dynamic capability theory
##                                                aaa.variable1
##                                                       <char>
##  1:                                       Gender Differences
##  2:                                       Gender Differences
##  3:                                       Gender Differences
##  4:                                       Gender Differences
##  5:                                       Gender Differences
##  6:                                       Gender Differences
##  7:                                       Gender Differences
##  8:                                       Gender Differences
##  9:                                       Gender Differences
## 10:                                       Gender Differences
## 11:                                       Gender Differences
## 12:                                       Gender Differences
## 13: Productivity Measurement and Enhancement System (ProMES)
## 14: Productivity Measurement and Enhancement System (ProMES)
## 15: Productivity Measurement and Enhancement System (ProMES)
## 16: Productivity Measurement and Enhancement System (ProMES)
##     aaa.analysisvariable1                     analysiscategory1 OBorIB1
##                    <char>                                <char>  <char>
##  1:          demographics              PERSONAL CHARACTERISTICS      OB
##  2:          demographics              PERSONAL CHARACTERISTICS      OB
##  3:          demographics              PERSONAL CHARACTERISTICS      OB
##  4:          demographics              PERSONAL CHARACTERISTICS      OB
##  5:          demographics              PERSONAL CHARACTERISTICS      OB
##  6:          demographics              PERSONAL CHARACTERISTICS      OB
##  7:          demographics              PERSONAL CHARACTERISTICS      OB
##  8:          demographics              PERSONAL CHARACTERISTICS      OB
##  9:          demographics              PERSONAL CHARACTERISTICS      OB
## 10:          demographics              PERSONAL CHARACTERISTICS      OB
## 11:          demographics              PERSONAL CHARACTERISTICS      OB
## 12:          demographics              PERSONAL CHARACTERISTICS      OB
## 13:     strategic process EFFECTIVENESS OF STRATEGIC MANAGEMENT      IB
## 14:     strategic process EFFECTIVENESS OF STRATEGIC MANAGEMENT      IB
## 15:     strategic process EFFECTIVENESS OF STRATEGIC MANAGEMENT      IB
## 16:     strategic process EFFECTIVENESS OF STRATEGIC MANAGEMENT      IB
##               aaa.variable2     aaa.analysisvariable2      analysiscategory2
##                      <char>                    <char>                 <char>
##  1: Negotiation Performance discretionary performance              BEHAVIORS
##  2: Negotiation Performance discretionary performance              BEHAVIORS
##  3: Negotiation Performance discretionary performance              BEHAVIORS
##  4: Negotiation Performance discretionary performance              BEHAVIORS
##  5: Negotiation Performance discretionary performance              BEHAVIORS
##  6: Negotiation Performance discretionary performance              BEHAVIORS
##  7: Negotiation Performance discretionary performance              BEHAVIORS
##  8: Negotiation Performance discretionary performance              BEHAVIORS
##  9: Negotiation Performance discretionary performance              BEHAVIORS
## 10: Negotiation Performance discretionary performance              BEHAVIORS
## 11: Negotiation Performance discretionary performance              BEHAVIORS
## 12: Negotiation Performance discretionary performance              BEHAVIORS
## 13:            productivity     non-marketing outcome ORGANIZATIONAL OUTCOME
## 14:            productivity     non-marketing outcome ORGANIZATIONAL OUTCOME
## 15:            productivity     non-marketing outcome ORGANIZATIONAL OUTCOME
## 16:            productivity     non-marketing outcome ORGANIZATIONAL OUTCOME
##     OBorIB2 relation                    Note3      N  aaa.k aaa.hsraw.r
##      <char>   <char>                   <char> <char> <char>      <char>
##  1:      OB       OB                     <NA>  17627    118        <NA>
##  2:      OB       OB                     <NA>   1728     22        <NA>
##  3:      OB       OB                     <NA>   3727     40        <NA>
##  4:      OB       OB                     <NA>  15866    104        <NA>
##  5:      OB       OB                     <NA>   2714     28        <NA>
##  6:      OB       OB                     <NA>   2523     30        <NA>
##  7:      OB       OB                     <NA>   3113     38        <NA>
##  8:      OB       OB                     <NA>   2133     27        <NA>
##  9:      OB       OB                     <NA>  15857     97        <NA>
## 10:      OB       OB                     <NA>   2202     27        <NA>
## 11:      OB       OB                     <NA>   5775     52        <NA>
## 12:      OB       OB                     <NA>  14860     96        <NA>
## 13:      IB       IB 变量间的关系从文章中找到   1647     33        0.93
## 14:      IB       IB                     <NA>    364     23        1.18
## 15:      IB       IB                     <NA>    236     13        1.39
## 16:      IB       IB                     <NA>    317     11        1.35
##     hsraw.sdcorr hsraw.sdartifact hsraw.sdtrue hsraw.var.obs.total
##            <num>           <lgcl>       <lgcl>              <char>
##  1:           NA               NA           NA                <NA>
##  2:           NA               NA           NA                <NA>
##  3:           NA               NA           NA                <NA>
##  4:           NA               NA           NA                <NA>
##  5:           NA               NA           NA                <NA>
##  6:           NA               NA           NA                <NA>
##  7:           NA               NA           NA                <NA>
##  8:           NA               NA           NA                <NA>
##  9:           NA               NA           NA                <NA>
## 10:           NA               NA           NA                <NA>
## 11:           NA               NA           NA                <NA>
## 12:           NA               NA           NA                <NA>
## 13:         1.68               NA           NA                <NA>
## 14:         0.98               NA           NA                <NA>
## 15:         0.68               NA           NA                <NA>
## 16:         1.67               NA           NA                <NA>
##     hsraw.var.error hsraw.var.true hsraw.95lci hsraw.95uci hs.LCI90 hs.UCI90
##              <char>         <char>       <num>       <num>    <num>    <num>
##  1:            <NA>           <NA>          NA          NA       NA       NA
##  2:            <NA>           <NA>          NA          NA       NA       NA
##  3:            <NA>           <NA>          NA          NA       NA       NA
##  4:            <NA>           <NA>          NA          NA       NA       NA
##  5:            <NA>           <NA>          NA          NA       NA       NA
##  6:            <NA>           <NA>          NA          NA       NA       NA
##  7:            <NA>           <NA>          NA          NA       NA       NA
##  8:            <NA>           <NA>          NA          NA       NA       NA
##  9:            <NA>           <NA>          NA          NA       NA       NA
## 10:            <NA>           <NA>          NA          NA       NA       NA
## 11:            <NA>           <NA>          NA          NA       NA       NA
## 12:            <NA>           <NA>          NA          NA       NA       NA
## 13:          0.1195           <NA>        0.58        1.72       NA       NA
## 14:          0.3431           <NA>        0.78        1.58       NA       NA
## 15:          0.4464           <NA>        1.13        1.87       NA       NA
## 16:           0.939           <NA>        1.22        3.20       NA       NA
##     hsraw.10cv hsraw.90cv hs.LCV5note hs.UCV95note hs.LCV2.5note hs.UCV97.5note
##          <num>      <num>       <num>        <num>         <num>          <num>
##  1:         NA         NA          NA           NA            NA             NA
##  2:         NA         NA          NA           NA            NA             NA
##  3:         NA         NA          NA           NA            NA             NA
##  4:         NA         NA          NA           NA            NA             NA
##  5:         NA         NA          NA           NA            NA             NA
##  6:         NA         NA          NA           NA            NA             NA
##  7:         NA         NA          NA           NA            NA             NA
##  8:         NA         NA          NA           NA            NA             NA
##  9:         NA         NA          NA           NA            NA             NA
## 10:         NA         NA          NA           NA            NA             NA
## 11:         NA         NA          NA           NA            NA             NA
## 12:         NA         NA          NA           NA            NA             NA
## 13:         NA         NA          NA           NA            NA             NA
## 14:         NA         NA          NA           NA            NA             NA
## 15:         NA         NA          NA           NA            NA             NA
## 16:         NA         NA          NA           NA            NA             NA
##     hsraw.se hsraw.acc aaa.hscorrected.r hscorrected.sdcorr
##        <num>     <num>            <char>              <num>
##  1:       NA        NA              <NA>                 NA
##  2:       NA        NA              <NA>                 NA
##  3:       NA        NA              <NA>                 NA
##  4:       NA        NA              <NA>                 NA
##  5:       NA        NA              <NA>                 NA
##  6:       NA        NA              <NA>                 NA
##  7:       NA        NA              <NA>                 NA
##  8:       NA        NA              <NA>                 NA
##  9:       NA        NA              <NA>                 NA
## 10:       NA        NA              <NA>                 NA
## 11:       NA        NA              <NA>                 NA
## 12:       NA        NA              <NA>                 NA
## 13:     0.29        NA              <NA>                 NA
## 14:     0.20        NA              <NA>                 NA
## 15:     0.19        NA              <NA>                 NA
## 16:     0.50        NA              <NA>                 NA
##     hscorrected.sdartifact hscorrected.sdtrue hscorrected.var.obs.total
##                     <lgcl>              <num>                     <num>
##  1:                     NA                 NA                        NA
##  2:                     NA                 NA                        NA
##  3:                     NA                 NA                        NA
##  4:                     NA                 NA                        NA
##  5:                     NA                 NA                        NA
##  6:                     NA                 NA                        NA
##  7:                     NA                 NA                        NA
##  8:                     NA                 NA                        NA
##  9:                     NA                 NA                        NA
## 10:                     NA                 NA                        NA
## 11:                     NA                 NA                        NA
## 12:                     NA                 NA                        NA
## 13:                     NA                 NA                        NA
## 14:                     NA                 NA                        NA
## 15:                     NA                 NA                        NA
## 16:                     NA                 NA                        NA
##     hscorrected.var.error hscorrected.var.true hscorrected.95lci
##                     <num>                <num>            <char>
##  1:                    NA                   NA              <NA>
##  2:                    NA                   NA              <NA>
##  3:                    NA                   NA              <NA>
##  4:                    NA                   NA              <NA>
##  5:                    NA                   NA              <NA>
##  6:                    NA                   NA              <NA>
##  7:                    NA                   NA              <NA>
##  8:                    NA                   NA              <NA>
##  9:                    NA                   NA              <NA>
## 10:                    NA                   NA              <NA>
## 11:                    NA                   NA              <NA>
## 12:                    NA                   NA              <NA>
## 13:                    NA                   NA              <NA>
## 14:                    NA                   NA              <NA>
## 15:                    NA                   NA              <NA>
## 16:                    NA                   NA              <NA>
##     hscorrected.95uci hscorrected.90lci hscorrected.90uci hscorrected.10cv
##                 <num>             <num>             <num>           <char>
##  1:                NA                NA                NA             <NA>
##  2:                NA                NA                NA             <NA>
##  3:                NA                NA                NA             <NA>
##  4:                NA                NA                NA             <NA>
##  5:                NA                NA                NA             <NA>
##  6:                NA                NA                NA             <NA>
##  7:                NA                NA                NA             <NA>
##  8:                NA                NA                NA             <NA>
##  9:                NA                NA                NA             <NA>
## 10:                NA                NA                NA             <NA>
## 11:                NA                NA                NA             <NA>
## 12:                NA                NA                NA             <NA>
## 13:                NA                NA                NA             <NA>
## 14:                NA                NA                NA             <NA>
## 15:                NA                NA                NA             <NA>
## 16:                NA                NA                NA             <NA>
##     hscorrected.90cv hscorrected.5cv hscorrected.95cv hscorrected.se
##               <char>           <num>            <num>          <num>
##  1:             <NA>              NA               NA             NA
##  2:             <NA>              NA               NA             NA
##  3:             <NA>              NA               NA             NA
##  4:             <NA>              NA               NA             NA
##  5:             <NA>              NA               NA             NA
##  6:             <NA>              NA               NA             NA
##  7:             <NA>              NA               NA             NA
##  8:             <NA>              NA               NA             NA
##  9:             <NA>              NA               NA             NA
## 10:             <NA>              NA               NA             NA
## 11:             <NA>              NA               NA             NA
## 12:             <NA>              NA               NA             NA
## 13:             <NA>              NA               NA             NA
## 14:             <NA>              NA               NA             NA
## 15:             <NA>              NA               NA             NA
## 16:             <NA>              NA               NA             NA
##     hscorrected.acc aaa.horaw.r horaw.95uci horaw.95lci horaw.q horaw.p horaw.t
##               <num>      <char>       <num>       <num>  <char>  <char>  <lgcl>
##  1:              NA        0.31        0.24        0.37  408.54  <0.001      NA
##  2:              NA       -0.07       -0.41        0.27  223.85  <0.001      NA
##  3:              NA       -0.27       -0.43       -0.11   175.5  <0.001      NA
##  4:              NA        0.29        0.21        0.36  385.88  <0.001      NA
##  5:              NA        0.23        0.11        0.36   60.56  <0.001      NA
##  6:              NA       -0.34       -0.61       -0.07  278.33  <0.001      NA
##  7:              NA       -0.28       -0.50       -0.06  294.99  <0.001      NA
##  8:              NA         0.2        0.05        0.35   66.64  <0.001      NA
##  9:              NA        0.32        0.24        0.39   359.1  <0.001      NA
## 10:              NA        0.18        0.03        0.33   68.21  <0.001      NA
## 11:              NA       -0.11       -0.27        0.05  374.72  <0.001      NA
## 12:              NA         0.3        0.21        0.40  548.86  <0.001      NA
## 13:              NA        <NA>          NA          NA    <NA>    <NA>      NA
## 14:              NA        <NA>          NA          NA    <NA>    <NA>      NA
## 15:              NA        <NA>          NA          NA    <NA>    <NA>      NA
## 16:              NA        <NA>          NA          NA    <NA>    <NA>      NA
##     horaw.t2 horaw.I horaw.i2 aaa.hocorrected.r hocorrected.95uci
##        <num>  <lgcl>    <num>             <num>             <num>
##  1:       NA      NA       NA                NA                NA
##  2:       NA      NA       NA                NA                NA
##  3:       NA      NA       NA                NA                NA
##  4:       NA      NA       NA                NA                NA
##  5:       NA      NA       NA                NA                NA
##  6:       NA      NA       NA                NA                NA
##  7:       NA      NA       NA                NA                NA
##  8:       NA      NA       NA                NA                NA
##  9:       NA      NA       NA                NA                NA
## 10:       NA      NA       NA                NA                NA
## 11:       NA      NA       NA                NA                NA
## 12:       NA      NA       NA                NA                NA
## 13:       NA      NA       NA                NA                NA
## 14:       NA      NA       NA                NA                NA
## 15:       NA      NA       NA                NA                NA
## 16:       NA      NA       NA                NA                NA
##     hocorrected.95lci hocorrected.q hocorrected.p hocorrected.t hocorrected.t2
##                 <num>         <num>        <char>        <char>          <num>
##  1:                NA            NA          <NA>          <NA>             NA
##  2:                NA            NA          <NA>          <NA>             NA
##  3:                NA            NA          <NA>          <NA>             NA
##  4:                NA            NA          <NA>          <NA>             NA
##  5:                NA            NA          <NA>          <NA>             NA
##  6:                NA            NA          <NA>          <NA>             NA
##  7:                NA            NA          <NA>          <NA>             NA
##  8:                NA            NA          <NA>          <NA>             NA
##  9:                NA            NA          <NA>          <NA>             NA
## 10:                NA            NA          <NA>          <NA>             NA
## 11:                NA            NA          <NA>          <NA>             NA
## 12:                NA            NA          <NA>          <NA>             NA
## 13:                NA            NA          <NA>          <NA>             NA
## 14:                NA            NA          <NA>          <NA>             NA
## 15:                NA            NA          <NA>          <NA>             NA
## 16:                NA            NA          <NA>          <NA>             NA
##     hocorrected.I hocorrected.i2                                    XX
##            <lgcl>          <num>                                <char>
##  1:            NA             NA                             BEHAVIORS
##  2:            NA             NA                             BEHAVIORS
##  3:            NA             NA                             BEHAVIORS
##  4:            NA             NA                             BEHAVIORS
##  5:            NA             NA                             BEHAVIORS
##  6:            NA             NA                             BEHAVIORS
##  7:            NA             NA                             BEHAVIORS
##  8:            NA             NA                             BEHAVIORS
##  9:            NA             NA                             BEHAVIORS
## 10:            NA             NA                             BEHAVIORS
## 11:            NA             NA                             BEHAVIORS
## 12:            NA             NA                             BEHAVIORS
## 13:            NA             NA EFFECTIVENESS OF STRATEGIC MANAGEMENT
## 14:            NA             NA EFFECTIVENESS OF STRATEGIC MANAGEMENT
## 15:            NA             NA EFFECTIVENESS OF STRATEGIC MANAGEMENT
## 16:            NA             NA EFFECTIVENESS OF STRATEGIC MANAGEMENT
##                           YY
##                       <char>
##  1: PERSONAL CHARACTERISTICS
##  2: PERSONAL CHARACTERISTICS
##  3: PERSONAL CHARACTERISTICS
##  4: PERSONAL CHARACTERISTICS
##  5: PERSONAL CHARACTERISTICS
##  6: PERSONAL CHARACTERISTICS
##  7: PERSONAL CHARACTERISTICS
##  8: PERSONAL CHARACTERISTICS
##  9: PERSONAL CHARACTERISTICS
## 10: PERSONAL CHARACTERISTICS
## 11: PERSONAL CHARACTERISTICS
## 12: PERSONAL CHARACTERISTICS
## 13:   ORGANIZATIONAL OUTCOME
## 14:   ORGANIZATIONAL OUTCOME
## 15:   ORGANIZATIONAL OUTCOME
## 16:   ORGANIZATIONAL OUTCOME
##                                              ordervariable1
##                                                      <char>
##  1:                   demographics@PERSONAL CHARACTERISTICS
##  2:                   demographics@PERSONAL CHARACTERISTICS
##  3:                   demographics@PERSONAL CHARACTERISTICS
##  4:                   demographics@PERSONAL CHARACTERISTICS
##  5:                   demographics@PERSONAL CHARACTERISTICS
##  6:                   demographics@PERSONAL CHARACTERISTICS
##  7:                   demographics@PERSONAL CHARACTERISTICS
##  8:                   demographics@PERSONAL CHARACTERISTICS
##  9:                   demographics@PERSONAL CHARACTERISTICS
## 10:                   demographics@PERSONAL CHARACTERISTICS
## 11:                   demographics@PERSONAL CHARACTERISTICS
## 12:                   demographics@PERSONAL CHARACTERISTICS
## 13: strategic process@EFFECTIVENESS OF STRATEGIC MANAGEMENT
## 14: strategic process@EFFECTIVENESS OF STRATEGIC MANAGEMENT
## 15: strategic process@EFFECTIVENESS OF STRATEGIC MANAGEMENT
## 16: strategic process@EFFECTIVENESS OF STRATEGIC MANAGEMENT
##                                   ordervariable2
##                                           <char>
##  1:          discretionary performance@BEHAVIORS
##  2:          discretionary performance@BEHAVIORS
##  3:          discretionary performance@BEHAVIORS
##  4:          discretionary performance@BEHAVIORS
##  5:          discretionary performance@BEHAVIORS
##  6:          discretionary performance@BEHAVIORS
##  7:          discretionary performance@BEHAVIORS
##  8:          discretionary performance@BEHAVIORS
##  9:          discretionary performance@BEHAVIORS
## 10:          discretionary performance@BEHAVIORS
## 11:          discretionary performance@BEHAVIORS
## 12:          discretionary performance@BEHAVIORS
## 13: non-marketing outcome@ORGANIZATIONAL OUTCOME
## 14: non-marketing outcome@ORGANIZATIONAL OUTCOME
## 15: non-marketing outcome@ORGANIZATIONAL OUTCOME
## 16: non-marketing outcome@ORGANIZATIONAL OUTCOME
##                                                                                                 ordervariablefactor1
##                                                                                                               <char>
##  1:                                                         demographics@PERSONAL CHARACTERISTICS&Gender Differences
##  2:                                                         demographics@PERSONAL CHARACTERISTICS&Gender Differences
##  3:                                                         demographics@PERSONAL CHARACTERISTICS&Gender Differences
##  4:                                                         demographics@PERSONAL CHARACTERISTICS&Gender Differences
##  5:                                                         demographics@PERSONAL CHARACTERISTICS&Gender Differences
##  6:                                                         demographics@PERSONAL CHARACTERISTICS&Gender Differences
##  7:                                                         demographics@PERSONAL CHARACTERISTICS&Gender Differences
##  8:                                                         demographics@PERSONAL CHARACTERISTICS&Gender Differences
##  9:                                                         demographics@PERSONAL CHARACTERISTICS&Gender Differences
## 10:                                                         demographics@PERSONAL CHARACTERISTICS&Gender Differences
## 11:                                                         demographics@PERSONAL CHARACTERISTICS&Gender Differences
## 12:                                                         demographics@PERSONAL CHARACTERISTICS&Gender Differences
## 13: strategic process@EFFECTIVENESS OF STRATEGIC MANAGEMENT&Productivity Measurement and Enhancement System (ProMES)
## 14: strategic process@EFFECTIVENESS OF STRATEGIC MANAGEMENT&Productivity Measurement and Enhancement System (ProMES)
## 15: strategic process@EFFECTIVENESS OF STRATEGIC MANAGEMENT&Productivity Measurement and Enhancement System (ProMES)
## 16: strategic process@EFFECTIVENESS OF STRATEGIC MANAGEMENT&Productivity Measurement and Enhancement System (ProMES)
##                                            ordervariablefactor2
##                                                          <char>
##  1: discretionary performance@BEHAVIORS&Negotiation Performance
##  2: discretionary performance@BEHAVIORS&Negotiation Performance
##  3: discretionary performance@BEHAVIORS&Negotiation Performance
##  4: discretionary performance@BEHAVIORS&Negotiation Performance
##  5: discretionary performance@BEHAVIORS&Negotiation Performance
##  6: discretionary performance@BEHAVIORS&Negotiation Performance
##  7: discretionary performance@BEHAVIORS&Negotiation Performance
##  8: discretionary performance@BEHAVIORS&Negotiation Performance
##  9: discretionary performance@BEHAVIORS&Negotiation Performance
## 10: discretionary performance@BEHAVIORS&Negotiation Performance
## 11: discretionary performance@BEHAVIORS&Negotiation Performance
## 12: discretionary performance@BEHAVIORS&Negotiation Performance
## 13:   non-marketing outcome@ORGANIZATIONAL OUTCOME&productivity
## 14:   non-marketing outcome@ORGANIZATIONAL OUTCOME&productivity
## 15:   non-marketing outcome@ORGANIZATIONAL OUTCOME&productivity
## 16:   non-marketing outcome@ORGANIZATIONAL OUTCOME&productivity
##                                               Xx
##                                           <char>
##  1:        demographics@PERSONAL CHARACTERISTICS
##  2:        demographics@PERSONAL CHARACTERISTICS
##  3:        demographics@PERSONAL CHARACTERISTICS
##  4:        demographics@PERSONAL CHARACTERISTICS
##  5:        demographics@PERSONAL CHARACTERISTICS
##  6:        demographics@PERSONAL CHARACTERISTICS
##  7:        demographics@PERSONAL CHARACTERISTICS
##  8:        demographics@PERSONAL CHARACTERISTICS
##  9:        demographics@PERSONAL CHARACTERISTICS
## 10:        demographics@PERSONAL CHARACTERISTICS
## 11:        demographics@PERSONAL CHARACTERISTICS
## 12:        demographics@PERSONAL CHARACTERISTICS
## 13: non-marketing outcome@ORGANIZATIONAL OUTCOME
## 14: non-marketing outcome@ORGANIZATIONAL OUTCOME
## 15: non-marketing outcome@ORGANIZATIONAL OUTCOME
## 16: non-marketing outcome@ORGANIZATIONAL OUTCOME
##                                                          Yy CheckMissingR
##                                                      <char>         <num>
##  1:                     discretionary performance@BEHAVIORS             1
##  2:                     discretionary performance@BEHAVIORS             1
##  3:                     discretionary performance@BEHAVIORS             1
##  4:                     discretionary performance@BEHAVIORS             1
##  5:                     discretionary performance@BEHAVIORS             1
##  6:                     discretionary performance@BEHAVIORS             1
##  7:                     discretionary performance@BEHAVIORS             1
##  8:                     discretionary performance@BEHAVIORS             1
##  9:                     discretionary performance@BEHAVIORS             1
## 10:                     discretionary performance@BEHAVIORS             1
## 11:                     discretionary performance@BEHAVIORS             1
## 12:                     discretionary performance@BEHAVIORS             1
## 13: strategic process@EFFECTIVENESS OF STRATEGIC MANAGEMENT             1
## 14: strategic process@EFFECTIVENESS OF STRATEGIC MANAGEMENT             1
## 15: strategic process@EFFECTIVENESS OF STRATEGIC MANAGEMENT             1
## 16: strategic process@EFFECTIVENESS OF STRATEGIC MANAGEMENT             1
##                                                                                          CategoriesVariablesCorrelates1
##                                                                                                                  <char>
##  1:                                                         OB#PERSONAL CHARACTERISTICS#demographics#Gender Differences
##  2:                                                         OB#PERSONAL CHARACTERISTICS#demographics#Gender Differences
##  3:                                                         OB#PERSONAL CHARACTERISTICS#demographics#Gender Differences
##  4:                                                         OB#PERSONAL CHARACTERISTICS#demographics#Gender Differences
##  5:                                                         OB#PERSONAL CHARACTERISTICS#demographics#Gender Differences
##  6:                                                         OB#PERSONAL CHARACTERISTICS#demographics#Gender Differences
##  7:                                                         OB#PERSONAL CHARACTERISTICS#demographics#Gender Differences
##  8:                                                         OB#PERSONAL CHARACTERISTICS#demographics#Gender Differences
##  9:                                                         OB#PERSONAL CHARACTERISTICS#demographics#Gender Differences
## 10:                                                         OB#PERSONAL CHARACTERISTICS#demographics#Gender Differences
## 11:                                                         OB#PERSONAL CHARACTERISTICS#demographics#Gender Differences
## 12:                                                         OB#PERSONAL CHARACTERISTICS#demographics#Gender Differences
## 13: IB#EFFECTIVENESS OF STRATEGIC MANAGEMENT#strategic process#Productivity Measurement and Enhancement System (ProMES)
## 14: IB#EFFECTIVENESS OF STRATEGIC MANAGEMENT#strategic process#Productivity Measurement and Enhancement System (ProMES)
## 15: IB#EFFECTIVENESS OF STRATEGIC MANAGEMENT#strategic process#Productivity Measurement and Enhancement System (ProMES)
## 16: IB#EFFECTIVENESS OF STRATEGIC MANAGEMENT#strategic process#Productivity Measurement and Enhancement System (ProMES)
##                                     CategoriesVariablesCorrelates2
##                                                             <char>
##  1: OB#BEHAVIORS#discretionary performance#Negotiation Performance
##  2: OB#BEHAVIORS#discretionary performance#Negotiation Performance
##  3: OB#BEHAVIORS#discretionary performance#Negotiation Performance
##  4: OB#BEHAVIORS#discretionary performance#Negotiation Performance
##  5: OB#BEHAVIORS#discretionary performance#Negotiation Performance
##  6: OB#BEHAVIORS#discretionary performance#Negotiation Performance
##  7: OB#BEHAVIORS#discretionary performance#Negotiation Performance
##  8: OB#BEHAVIORS#discretionary performance#Negotiation Performance
##  9: OB#BEHAVIORS#discretionary performance#Negotiation Performance
## 10: OB#BEHAVIORS#discretionary performance#Negotiation Performance
## 11: OB#BEHAVIORS#discretionary performance#Negotiation Performance
## 12: OB#BEHAVIORS#discretionary performance#Negotiation Performance
## 13:   IB#ORGANIZATIONAL OUTCOME#non-marketing outcome#productivity
## 14:   IB#ORGANIZATIONAL OUTCOME#non-marketing outcome#productivity
## 15:   IB#ORGANIZATIONAL OUTCOME#non-marketing outcome#productivity
## 16:   IB#ORGANIZATIONAL OUTCOME#non-marketing outcome#productivity
##     reverse.VariablesOBX reverse.VariablesOBY reverse.VariablesIBX
##                    <num>                <num>                <num>
##  1:                    1                    1                    1
##  2:                    1                    1                    1
##  3:                    1                    1                    1
##  4:                    1                    1                    1
##  5:                    1                    1                    1
##  6:                    1                    1                    1
##  7:                    1                    1                    1
##  8:                    1                    1                    1
##  9:                    1                    1                    1
## 10:                    1                    1                    1
## 11:                    1                    1                    1
## 12:                    1                    1                    1
## 13:                    1                    1                    1
## 14:                    1                    1                    1
## 15:                    1                    1                    1
## 16:                    1                    1                    1
##     reverse.VariablesIBY
##                    <num>
##  1:                    1
##  2:                    1
##  3:                    1
##  4:                    1
##  5:                    1
##  6:                    1
##  7:                    1
##  8:                    1
##  9:                    1
## 10:                    1
## 11:                    1
## 12:                    1
## 13:                    1
## 14:                    1
## 15:                    1
## 16:                    1
library(data.table)

# 先确保aaa.hsraw.r和aaa.horaw.r这两列为数值型
LBsR[, `aaa.hsraw.r` := as.numeric(`aaa.hsraw.r`)]
LBsR[, `aaa.horaw.r` := as.numeric(`aaa.horaw.r`)]

# 对于 articleid==484 的行:使用 aaa.hsraw.r 计算转换后的 r 值,结果存入 aaa.hscorrected.r
LBsR[aaa.articleid == 484, `aaa.hscorrected.r` := `aaa.hsraw.r` / sqrt(`aaa.hsraw.r`^2 + 4)]

# 对于 articleid==2000 的行:使用 aaa.horaw.r 计算转换后的 r 值,结果存入 aaa.hocorrected.r
LBsR[aaa.articleid == 2000, `aaa.hocorrected.r` := `aaa.horaw.r` / sqrt(`aaa.horaw.r`^2 + 4)]

# 删除(或清空)原始的 d 值:将原始存储位置设置为 NA
LBsR[aaa.articleid == 484, `aaa.hsraw.r` := NA]
LBsR[aaa.articleid == 2000, `aaa.horaw.r` := NA]

# 检查结果
LBsR[aaa.articleid %in% c(484, 2000), .(aaa.articleid, `aaa.hsraw.r`, `aaa.hscorrected.r`, `aaa.horaw.r`, `aaa.hocorrected.r`)]
raw_vars <- c("hsraw.sdcorr", "hsraw.sdartifact", "hsraw.sdtrue", 
              "hsraw.var.obs.total", "hsraw.var.error", "hsraw.var.true", 
              "hsraw.95lci", "hsraw.95uci", "hs.LCI90", "hs.UCI90", 
              "hsraw.10cv", "hsraw.90cv", "hs.LCV5note", "hs.UCV95note",
              "hs.LCV2.5note", "hs.UCV97.5note", "hsraw.se", "hsraw.acc")

corrected_vars <- c("hscorrected.sdcorr", "hscorrected.sdartifact", "hscorrected.sdtrue",
                    "hscorrected.var.obs.total", "hscorrected.var.error", "hscorrected.var.true",
                    "hscorrected.95lci", "hscorrected.95uci", "hscorrected.LCI90", "hscorrected.UCI90",
                    "hscorrected.10cv", "hscorrected.90cv", "hscorrected.LCV5note", "hscorrected.UCV95note",
                    "hscorrected.LCV2.5note", "hscorrected.UCV97.5note", "hscorrected.se", "hscorrected.acc")


stopifnot(length(raw_vars) == length(corrected_vars))


for(i in seq_along(raw_vars)) {
  raw_col <- raw_vars[i]
  cor_col <- corrected_vars[i]
  
  # 先把原始列转换为数值型,以免出现字符/因子类型运算报错
  LBsR[, (raw_col) := as.numeric(as.character(get(raw_col)))]
  
  # 复制(仅对 articleid=484 的行)
  LBsR[aaa.articleid == 484, (cor_col) := get(raw_col)]
  
  # 清空原始列
  LBsR[aaa.articleid == 484, (raw_col) := NA]
}

# 查看最终结果(示例:只选出相应列)
cols_to_show <- c("aaa.articleid", raw_vars, corrected_vars)
LBsR[aaa.articleid == 484, ..cols_to_show]
# 定义 ho 列和对应 hocorrected 列的映射关系
ho_raw_vars <- c( "horaw.95uci", "horaw.95lci", 
                 "horaw.q", "horaw.p", "horaw.t", "horaw.t2", "horaw.I", "horaw.i2")
ho_corrected_vars <- c( "hocorrected.95uci", "hocorrected.95lci", 
                       "hocorrected.q", "hocorrected.p", "hocorrected.t", "hocorrected.t2", "hocorrected.I", "hocorrected.i2")

# 确保两者数量一致
stopifnot(length(ho_raw_vars) == length(ho_corrected_vars))

# 循环遍历每对列(仅对 articleid==2000 的记录进行操作)
for(i in seq_along(ho_raw_vars)) {
  raw_var <- ho_raw_vars[i]
  cor_var <- ho_corrected_vars[i]
  
  # 将原始列转换成数值型,防止因字符或因子问题影响复制
  LBsR[, (raw_var) := as.numeric(as.character(get(raw_var)))]
  
  # 对 articleid 为2000的行,复制原始ho列的值到对应的hocorrected列
  LBsR[aaa.articleid == 2000, (cor_var) := get(raw_var)]
  
  # 清空原始ho列的值(设为 NA)
  LBsR[aaa.articleid == 2000, (raw_var) := NA]
}

# 检查结果:只显示文章编号为2000的记录中相关的ho和hocorrected列
cols_to_show <- c(ho_raw_vars, ho_corrected_vars)
print(LBsR[aaa.articleid == 2000, ..cols_to_show])
##     horaw.95uci horaw.95lci horaw.q horaw.p horaw.t horaw.t2 horaw.I horaw.i2
##           <num>       <num>   <num>   <num>   <num>    <num>   <num>    <num>
##  1:          NA          NA      NA      NA      NA       NA      NA       NA
##  2:          NA          NA      NA      NA      NA       NA      NA       NA
##  3:          NA          NA      NA      NA      NA       NA      NA       NA
##  4:          NA          NA      NA      NA      NA       NA      NA       NA
##  5:          NA          NA      NA      NA      NA       NA      NA       NA
##  6:          NA          NA      NA      NA      NA       NA      NA       NA
##  7:          NA          NA      NA      NA      NA       NA      NA       NA
##  8:          NA          NA      NA      NA      NA       NA      NA       NA
##  9:          NA          NA      NA      NA      NA       NA      NA       NA
## 10:          NA          NA      NA      NA      NA       NA      NA       NA
## 11:          NA          NA      NA      NA      NA       NA      NA       NA
## 12:          NA          NA      NA      NA      NA       NA      NA       NA
##     hocorrected.95uci hocorrected.95lci hocorrected.q hocorrected.p
##                 <num>             <num>         <num>        <char>
##  1:              0.24              0.37        408.54          <NA>
##  2:             -0.41              0.27        223.85          <NA>
##  3:             -0.43             -0.11        175.50          <NA>
##  4:              0.21              0.36        385.88          <NA>
##  5:              0.11              0.36         60.56          <NA>
##  6:             -0.61             -0.07        278.33          <NA>
##  7:             -0.50             -0.06        294.99          <NA>
##  8:              0.05              0.35         66.64          <NA>
##  9:              0.24              0.39        359.10          <NA>
## 10:              0.03              0.33         68.21          <NA>
## 11:             -0.27              0.05        374.72          <NA>
## 12:              0.21              0.40        548.86          <NA>
##     hocorrected.t hocorrected.t2 hocorrected.I hocorrected.i2
##            <char>          <num>        <lgcl>          <num>
##  1:          <NA>             NA            NA             NA
##  2:          <NA>             NA            NA             NA
##  3:          <NA>             NA            NA             NA
##  4:          <NA>             NA            NA             NA
##  5:          <NA>             NA            NA             NA
##  6:          <NA>             NA            NA             NA
##  7:          <NA>             NA            NA             NA
##  8:          <NA>             NA            NA             NA
##  9:          <NA>             NA            NA             NA
## 10:          <NA>             NA            NA             NA
## 11:          <NA>             NA            NA             NA
## 12:          <NA>             NA            NA             NA

4 2nd Meta-Analysis Function

library(metafor) # standard meta-analyses
library(xlsx)
library(stringr)
library(robumeta) # package for RVE meta-analyses
library(clubSandwich)
SOOutput <- function(data, NewVariables = NULL, Order = "", title = "", 
                     TName = FALSE, note = FALSE, Cnote = FALSE, digits = FALSE) {
  
  # 输出中文说明(可选)
  if (Cnote) {
    instructionText_cn <- "SOOutput() 函数用于提取二阶元分析结果,并整理为一个数据表。
主要提取的变量包括:
  - XCategory, YCategory:构建变量
  - Nmeta:元分析中包含的研究数量
  - sumk:效应量总数
  - sumN:样本量总和
  - C6_Mean.R, C6_SE:效应量及其标准误
  - CI.LL, CI.UL:95%置信区间下、上限
  - CV.LL, CV.UL:信用区间下、上限
  - C7_Sampling.Error.Variance:抽样误差方差
  - C8_Total.Variance:总方差
  - C9_True.Variance:真实方差
  - C10_Prop.of.Error.Variance:误差方差所占比例
  - C11_Reliability:可靠性指标

额外参数:
  - NewVariables:可额外增加的变量
  - Order:指定排序列(例如 '-sumk' 表示降序排序)
  - title:输出表格标题
  - TName:是否将变量重命名为更直观的名称
  - digits:如果为 TRUE,则除“XCategory”和“YCategory”外的数值列保留3位小数且不采用科学计数法;为 FALSE 时保持原样。"
    wrapTextForChinese(instructionText_cn, maxWidth = 55)
  }
  
  # 输出英文说明(可选)
  if (note) {
    instructionText_en <- "SOOutput() is an R function for extracting and organizing second-order meta-analysis results.
It extracts the following variables:
  XCategory, YCategory, Nmeta, sumk, sumN,
  C6_Mean.R, C6_SE, CI.LL, CI.UL, CV.LL, CV.UL,
  C7_Sampling.Error.Variance, C8_Total.Variance, C9_True.Variance,
  C10_Prop.of.Error.Variance, C11_Reliability.
Additional parameters:
  - NewVariables: Optional additional variables to include.
  - Order: Specifies the sorting column (e.g., '-sumk' for descending order).
  - title: Title for the output table.
  - TName: If TRUE, renames the output columns to more intuitive names.
  - digits: If TRUE, all numeric columns (except XCategory and YCategory) will be rounded to 3 decimal places and displayed in fixed notation; if FALSE, they remain unchanged."
    wrapText(instructionText_en, width = 80)
  }
  
  # 定义默认需要提取的变量
  default_vars <- c("XCategory", "YCategory", "Nmeta", "sumk", "sumN",
                    "C6_Mean R", "C6_SE", "CI.LL", "CI.UL", "CV.LL", "CV.UL",
                    "C7_Sampling Error Variance", "C8_Total Variance", "C9_True Variance",
                    "C10_Prop of Error Variance", "C11_Reliability")
  
  # 合并额外变量(如果有的话)
  if (!is.null(NewVariables)) {
    selected_vars <- c(default_vars, NewVariables)
  } else {
    selected_vars <- default_vars
  }
  
  # 确保数据为 data.table 格式
  data <- as.data.table(data)
  
  # 检查所需列是否存在,缺失则警告并移除
  missing_vars <- setdiff(selected_vars, names(data))
  if (length(missing_vars) > 0) {
    warning("以下变量在数据中未找到,将被移除: ", paste(missing_vars, collapse = ", "))
    selected_vars <- intersect(selected_vars, names(data))
  }
  
  # 若没有任何有效的列,则停止运行
  if (length(selected_vars) == 0) {
    stop("没有找到任何有效的列,请检查输入数据和NewVariables参数。")
  }
  
  # 提取所需变量构建输出表
  OutputTable <- data[, ..selected_vars]
  
  # 自动转换所有列为数值型,除了 "XCategory" 和 "YCategory"
  for (col in names(OutputTable)) {
    if (!(col %in% c("XCategory", "YCategory"))) {
      OutputTable[[col]] <- suppressWarnings(as.numeric(OutputTable[[col]]))
    }
  }
  
  # 根据 Order 参数进行排序(支持负号表示降序)
  if (nzchar(Order)) {
    order_col <- gsub("^-", "", Order)   # 去除负号
    if (!(order_col %in% names(OutputTable))) {
      warning("排序列 ", order_col, " 不存在于输出表中,跳过排序。")
    } else {
      order_desc <- grepl("^-", Order)  # 检查是否降序
      setorderv(OutputTable, cols = order_col, order = if (order_desc) -1 else 1)
    }
  }
  
  # 根据 TName 参数重命名输出列为更直观的名称
  if (TName) {
    rename_map <- list(
      "XCategory" = "X Category",
      "YCategory" = "Y Category",
      "Nmeta" = "Number of Studies",
      "sumk" = "Total k",
      "sumN" = "Total N",
      "C6_Mean.R" = "Mean R",
      "C6_SE" = "SE",
      "CI.LL" = "CI Lower",
      "CI.UL" = "CI Upper",
      "CV.LL" = "CV Lower",
      "CV.UL" = "CV Upper",
      "C7_Sampling.Error.Variance" = "Sampling Error Var",
      "C8_Total.Variance" = "Total Var",
      "C9_True.Variance" = "True Var",
      "C10_Prop.of.Error.Variance" = "Prop. Error Var",
      "C11_Reliability" = "Reliability"
    )
    common_names <- intersect(names(rename_map), names(OutputTable))
    setnames(OutputTable, old = common_names, new = unlist(rename_map[common_names]))
  }
  
  # 当 digits 为 TRUE 时,对数值型列(除 XCategory 和 YCategory 外)进行 round() 四舍五入至3位小数,
  # 返回的依然是数值型的 data.table(如需避免科学计数法显示,可在外部设置 options(scipen = 999))
  if (digits) {
    numeric_cols <- names(OutputTable)[sapply(OutputTable, is.numeric)]
    if (length(numeric_cols) > 0) {
      OutputTable[, (numeric_cols) := lapply(.SD, round, 3), .SDcols = numeric_cols]
    }
  }
  
  # 如果指定了标题并且存在打印函数,则打印输出表格
  if (nzchar(title) && exists("print_table")) {
    print_table(OutputTable, title = title)
  }
  
  # 强制确保返回对象为 data.table
  setDT(OutputTable)
  return(OutputTable)
}
###A. Print Chinese text for notes


wrapTextForChinese <- function(text, maxWidth = 40) {
  # PURPOSE: This function is used to bring the Chinese text when knit rmd for html format.
  #EXAMPLE: For illustrative example, please refer to the section 1.3.6 and 2.2.2 of 'Auto.Me Illustration' file in this link: https://rpubs.com/EasonZhang.
  lines <- unlist(strsplit(text, split = "\n"))  # 首先按原有换行符分割文本
  wrappedLines <- c()

  for (line in lines) {
    while (nchar(line, type = "width") > maxWidth) {
      # 查找在 maxWidth 限制内的最后一个可能的断行点
      breakPosition <- maxWidth
      if (grepl("!", substr(line, 1, maxWidth))) {
        # 如果在当前行的前maxWidth个字符中存在"!",找到最后一个"!"的位置作为断行点
        breakPosition <- max(unlist(gregexpr("!", substr(line, 1, maxWidth))))
      }
      # 添加当前断行点之前的文本到wrappedLines
      wrappedLines <- c(wrappedLines, substr(line, 1, breakPosition))
      # 移除已经添加的部分
      line <- substr(line, breakPosition + 1, nchar(line))
    }
    # 添加剩余的部分(如果有)
    if (nchar(line) > 0) {
      wrappedLines <- c(wrappedLines, line)
    }
  }

  # 使用cat打印最终结果
  cat(paste(wrappedLines, collapse = "\n"))
}




wrapText <- function(text, width = 80) {
  # PURPOSE: This function is used to bring the English text when knit rmd for html format.
  #EXAMPLE: For illustrative example, please refer to the section 1.3.6 and 2.2.2 of 'Auto.Me Illustration' file in this link: https://rpubs.com/EasonZhang.
  words <- unlist(strsplit(text, split = " "))  # 将文本拆分为单词
  wrappedText <- ""
  currentLineLength <- 0

  for (word in words) {
    # 检查添加当前单词是否会超过宽度限制
    if (currentLineLength + nchar(word, type="width") <= width) {
      # 当前行添加单词
      wrappedText <- ifelse(currentLineLength > 0, paste0(wrappedText, " ", word), paste0(wrappedText, word))
      currentLineLength <- currentLineLength + nchar(word, type="width") + 1  # 加1因为空格
    } else {
      # 超过宽度限制,从新行开始
      wrappedText <- paste0(wrappedText, "\n", word)
      currentLineLength <- nchar(word, type="width")
    }
  }

  cat(wrappedText)
}

trim.author <- function(author.v) {
  author.v <- sub(",.*", " et al.", author.v)
  author.v <- sub(",.*", " et al.", author.v)
  save.id <- grep("De", author.v)
  author.sv <- author.v[save.id]
  author.v <- gsub("
                  .*$", "", author.v)
  author.v[save.id] <- author.sv
  return(author.v)
}

# trim.metaid <- function(idv){
# idv = sub('\\(.*','',idv)
#  idv = sub('(.*','',idv)
#  idv = sub('_','',idv)
#  return(as.numeric(idv))
# }

trim.metaid <- function(idv) {
  idv <- sub("\\(.*", "", idv)
  idv <- sub("(.*", "", idv)
  idv <- sub("_", "", idv)
  # 如果字符串中包含字母,比如OB中"Liang2022",则替换成 "20252022"
  idv <- ifelse(grepl("Liang2022", idv), "20252022", idv)
  # 如果字符串中包含字母,比如IB中"LiuJOM",则替换成 "20252023"
  idv <- ifelse(grepl("LiuJOM", idv), "20252023", idv)
  return(as.numeric(idv))
}


LabChange <- function(labM, labv) {
  nr <- nrow(labM)
  labv.new <- labv
  for (i in 1:nr) {
    labv.new[labv.new == labM[i, 1]] <- labM[i, 2]
  }
  return(labv.new)
}

# myrma.des <- function(yi, vi, sid, method = "MLM", tau2 = NULL) {
#   # method: MLM or RVE
#   del.tmp <- which(is.na(yi) == T)
#   nna <- length(del.tmp)
#   if (nna > 0 && nna < length(yi)) {
#     yi <- yi[-del.tmp]
#     vi <- vi[-del.tmp]
#     sid <- sid[-del.tmp]
#   }
# 
#   nes <- length(yi) # number of effect sizes.  有多少个效应量
#   nmeta <- length(unique(sid)) # number of 1st-order meta  有多少个元分析
#   esid <- 1:length(sid) # effect size id  效应量的id,从1到nmeta,有多少个元分析有多少效应量
#   dat.tmp <- data.frame(yi = yi, vi = vi, sid = sid) # 效应量 yi、对应的抽样方差 vi 以及研究标识符 sid合并成一个数据框
#   fit <- list(yi = yi, vi = vi)
#   if (nmeta == 1) { # All effect sizes are from one meta-analysis
#     # RVE
#     fit.rve <- try(robu(
#       formula = yi ~ 1, data = dat.tmp,
#       studynum = sid, var.eff.size = vi,
#       modelweights = "CORR", small = TRUE
#     )) # 使用稳健方差估计
#     if (inherits(fit.rve, "try-error")) {
#       fit <- list(
#         b = NA, se = NA, sigma2 = NA, se.tau2 = NA, ci.lb = NA, ci.ub = NA,
#         k = nes, vi = rep(NA, nes)
#       )
#     } else {
#       fit$b <- fit.rve$reg_table$b.r # 总体平均效应量
#       fit$se <- fit.rve$reg_table$SE # 总体平均效应量的标准误
#       fit$sigma2 <- fit.rve$mod_info$tau.sq # 模型提供的 tau² 值(即异质性指标)
#       fit$se.tau2 <- NA # 总体效应量方差的标准误?
#       fit$ci.lb <- fit.rve$reg_table$CI.L # 总体平均效应量的置信区间下限
#       fit$ci.ub <- fit.rve$reg_table$CI.U # 总体平均效应量的置信区间上限
#       fit$k <- fit.rve$k # 元分析的个数,效应量数
#       print(fit.rve$mod_info$tau.sq)
#       cat("RVE meta-analysis with one meta-analysis\n", 
#           "Overall effect size: ", fit$b, "\n",
#           "Standard error: ", fit$se, "\n",
#           "Heterogeneity (tau^2): ", fit$sigma2, "\n",
#           "95% CI: [", fit$ci.lb, ", ", fit$ci.ub, "]\n")
#     }
#   } else {
#     if (nmeta == nes) { # no dependent effect sizes
#       fit <- try(rma(yi = yi, vi = vi))
#       if (inherits(fit, "try-error")) { # 如果 rma 函数拟合出错,则将 fit 赋值为一个包含关键统计量均为 NA 的列表
#         fit <- list(b = NA, se = NA, sigma2 = NA, se.tau2 = NA, ci.lb = NA, ci.ub = NA)
#       } else {
#         fit$sigma2 <- fit$tau2
#       }
#     } else { # With dependent effect sizes
#       if (method == "RVE") { # robust variance estimation
#         fit.rve <- try(robu(
#           formula = yi ~ 1, data = dat.tmp,
#           studynum = sid, var.eff.size = vi,
#           modelweights = "CORR", small = TRUE
#         ))
#         if (inherits(fit, "try-error")) {
#           fit <- list(
#             b = NA, se = NA, sigma2 = NA, se.tau2 = NA, ci.lb = NA, ci.ub = NA,
#             k = nes, vi = rep(NA, nes)
#           )
#         } else {
#           fit$b <- fit.rve$reg_table$b.r
#           fit$se <- fit.rve$reg_table$SE
#           fit$sigma2 <- fit.rve$mod_info$tau.sq
#           fit$se.tau2 <- NA
#           fit$ci.lb <- fit.rve$reg_table$CI.L
#           fit$ci.ub <- fit.rve$reg_table$CI.U
#           fit$k <- fit.rve$k
#         }
#       } else if (method == "MLM") {
#         if(length(yi) <= 1){
#           # 当只有一个效应量时,直接构造结果
#           fit <- list(
#             b = yi, 
#             se = sqrt(vi), 
#             sigma2 = NA,           # 无法估计异质性
#             se.tau2 = NA,
#             ci.lb = yi - 1.96 * sqrt(vi),
#             ci.ub = yi + 1.96 * sqrt(vi),
#             k = 1,
#             vi = vi,
#             nmeta = nmeta
#           )
#         } else {
#           fit.mlm <- try(rma.mv(yi = yi, V = vi,
#                                 random = list(~1 | sid, ~1 | esid),# 考虑两层随机效应——一个是基于研究编号(sid),另一个是基于效应量的编号(esid)
#                                 cvvc = TRUE))
#           if(inherits(fit.mlm, 'try-error')) { 
#             fit <- list(b = NA, se = NA, sigma2 = rep(NA, 2),
#                         ci.lb = NA, ci.ub = NA, k = nes, vi = rep(NA, nes))
#           } else {
#             fit <- fit.mlm
#           }
#         }
#       }
#     }
#   }
#   
#   fit$nmeta <- nmeta
#   return(fit)
# }

# 基于rma.uni的
myrma.des <- function(yi, vi, sid, method = "MLM", tau2 = NULL) {
  # method: MLM or RVE
  del.tmp <- which(is.na(yi) == T)
  nna <- length(del.tmp)
  if (nna > 0 && nna < length(yi)) {
    yi <- yi[-del.tmp]
    vi <- vi[-del.tmp]
    sid <- sid[-del.tmp]
  }

  nes <- length(yi) # number of effect sizes.  有多少个效应量
  nmeta <- length(unique(sid)) # number of 1st-order meta  有多少个元分析
  esid <- 1:length(sid) # effect size id  效应量的id,从1到nmeta,有多少个元分析有多少效应量
  dat.tmp <- data.frame(yi = yi, vi = vi, sid = sid) # 效应量 yi、对应的抽样方差 vi 以及研究标识符 sid合并成一个数据框
  fit <- list(yi = yi, vi = vi)
  if (nmeta == 1) { # All effect sizes are from one meta-analysis
    # RVE
    fit.rma <- try(
        rma.uni(yi = yi, vi = vi, data = dat.tmp, method = "REML") )# 使用稳健方差估计
    if (inherits(fit.rma, "try-error")) {
      fit <- list(
        b = NA, se = NA, sigma2 = NA, se.tau2 = NA, ci.lb = NA, ci.ub = NA,
        k = nes, vi = rep(NA, nes)
      )
    } else {
      print("运行成功")
      fit$b <- fit.rma$b # 总体平均效应量
      fit$se <- fit.rma$se # 总体平均效应量的标准误
      fit$sigma2 <- fit.rma$tau2 # 模型提供的 tau² 值(即异质性指标)
      fit$se.tau2 <- fit.rma$se.tau2 # 总体效应量方差的标准误?
      fit$ci.lb <- fit.rma$ci.lb# 总体平均效应量的置信区间下限
      fit$ci.ub <- fit.rma$ci.ub # 总体平均效应量的置信区间上限
      fit$k <-fit.rma$k# 元分析的个数,效应量数
#       cat("结果:\n",
#     "  平均效应量 (b):",       fit$b, "\n",
#     "  标准误 (SE):",          fit$se, "\n",
#     "  异质性 (tau²):",        fit$sigma2, "\n",
#     "  tau² 的标准误 (SE):",   fit$se.tau2, "\n",
#     "  置信区间下限:",         fit$ci.lb, "\n",
#     "  置信区间上限:",         fit$ci.ub, "\n",
#     "  效应量数量 (k):",       fit$k, "\n"
# )

    }
  } else {
    if (nmeta == nes) { # no dependent effect sizes
      fit <- try(rma(yi = yi, vi = vi))
      if (inherits(fit, "try-error")) { # 如果 rma 函数拟合出错,则将 fit 赋值为一个包含关键统计量均为 NA 的列表
        fit <- list(b = NA, se = NA, sigma2 = NA, se.tau2 = NA, ci.lb = NA, ci.ub = NA)
      } else {
        fit$sigma2 <- fit$tau2
      }
    } else { # With dependent effect sizes
      if (method == "RVE") { # robust variance estimation
        fit.rve <- try(robu(
          formula = yi ~ 1, data = dat.tmp,
          studynum = sid, var.eff.size = vi,
          modelweights = "CORR", small = TRUE
        ))
        if (inherits(fit, "try-error")) {
          fit <- list(
            b = NA, se = NA, sigma2 = NA, se.tau2 = NA, ci.lb = NA, ci.ub = NA,
            k = nes, vi = rep(NA, nes)
          )
        } else {
          fit$b <- fit.rve$reg_table$b.r
          fit$se <- fit.rve$reg_table$SE
          fit$sigma2 <- fit.rve$mod_info$tau.sq
          fit$se.tau2 <- NA
          fit$ci.lb <- fit.rve$reg_table$CI.L
          fit$ci.ub <- fit.rve$reg_table$CI.U
          fit$k <- fit.rve$k
        }
      } else if (method == "MLM") {
        if(length(yi) <= 1){
          # 当只有一个效应量时,直接构造结果
          fit <- list(
            b = yi, 
            se = sqrt(vi), 
            sigma2 = NA,           # 无法估计异质性
            se.tau2 = NA,
            ci.lb = yi - 1.96 * sqrt(vi),
            ci.ub = yi + 1.96 * sqrt(vi),
            k = 1,
            vi = vi,
            nmeta = nmeta
          )
        } else {
          fit.mlm <- try(rma.mv(yi = yi, V = vi,
                                random = list(~1 | sid, ~1 | esid),# 考虑两层随机效应——一个是基于研究编号(sid),另一个是基于效应量的编号(esid)
                                cvvc = TRUE))
          if(inherits(fit.mlm, 'try-error')) { 
            fit <- list(b = NA, se = NA, sigma2 = rep(NA, 2),
                        ci.lb = NA, ci.ub = NA, k = nes, vi = rep(NA, nes))
          } else {
            fit <- fit.mlm
          }
        }
      }
    }
  }
  
  fit$nmeta <- nmeta
  return(fit)
}

# Organize results
# i.e., return the 6th-11th columns in Table 2 in Schmidt paper
meta2nd.Table2SO <- function(fit, K, NK, nmeta2) {
  # fit: an rma object
  # meta2.d: data for the 2nd order meta-analysis
  #          rbar: 1st order meta-analytic correlations
  #          vi: sampling variances of rbar
  #          rel: study reliability (sqrt(rxx*ryy) or rbar/rhobar)
  # K: number of effect sizes within 1st order meta-analyses
  # NK: Total number of participants within 1st order meta-analyses
  if (is.null(fit$nmeta)) {
    nmeta <- nmeta2
  } else {
    nmeta <- fit$nmeta
  }

  nes <- length(K) # number of effect sizes
  if (is.null(fit$k)) {
    nes.used <- 0
  } else {
    nes.used <- fit$k
  }

# #如果多效应量情况,确保必需字段存在
# if (nes.used > 1) {
#   if (is.null(fit$vi)) fit$vi <- rep(NA_real_, nes)
#   if (is.null(fit$yi)) fit$yi <- rep(NA_real_, nes)
#   if (is.null(fit$b)) fit$b <- NA_real_
#   if (is.null(fit$se)) fit$se <- NA_real_
#   if (is.null(fit$ci.lb)) fit$ci.lb <- NA_real_
#   if (is.null(fit$ci.ub)) fit$ci.ub <- NA_real_
# } else {
#   if (is.null(fit$rbar)) fit$rbar <- NA_real_
#   if (is.null(fit$vi)) fit$vi <- NA_real_
#   if (is.null(fit$sigma2)) fit$sigma2 <- NA_real_
# }

  if (nes.used > 1) {
    ## Compute Second order sampling error: ESr2
    wi <- 1 / fit$vi # weight for each first order meta-analysis
    rbar.1st <- fit$yi

    # 1st order meta-analyses with missing values
    se.tau2 <- se.tau2.1.2nd <- se.tau2.2.2nd <- NA
    if (is.null(fit$se.tau2) == 0) {
      se.tau2 <- fit$se.tau2
    }
    del2 <- unique(which(is.na(cbind(rbar.1st, fit$vi)), arr.ind = T)[, 1])
    if (length(del2) == nes) { # 如果所有一阶元分析都有缺失则都为NA
      rbar.2nd <- ESr2 <- tau2.2nd <- tau2.1.2nd <- tau2.2.2nd <- NA
      Srbar2 <- ProVar <- rel <- NA
      CI95 <- CV80 <- rep(NA, 2)
    } else {
      if (length(del2) > 0) {
        ESr2 <- length(wi[-del2]) / sum(wi[-del2]) # 有缺失的,用未缺失部分计算
      } else {
        ESr2 <- length(wi) / sum(wi)
      } # Eq.6e 二阶抽样误差方差:m/sum(wi)  m为权重个数
      rbar.2nd <- fit$b[1] # estimated population mean correlation
      if (length(fit$sigma2) == 2) {
        tau2.1.2nd <- fit$sigma2[1] # between-meta variance
        tau2.2.2nd <- fit$sigma2[2] # within-meta variance
        tau2.2nd <- sum(fit$sigma2) # total between-effect-size variance
        if ((sum(is.na(fit$vvc)) == 0) && (nrow(fit$vvc) == 2)) {
          se.tau2 <- as.numeric(sqrt(t(c(1, 1)) %*% fit$vvc %*% c(1, 1)))
          se.tau2.1.2nd <- sqrt(fit$vvc[1, 1])
          se.tau2.2.2nd <- sqrt(fit$vvc[2, 2])
        }
      } else {
        tau2.2nd <- fit$sigma2
        tau2.1.2nd <- tau2.2.2nd <- NA
      }
      CI95 <- c(fit$ci.lb, fit$ci.ub)
      CV80 <- c(
        rbar.2nd - qnorm(.90) * sqrt(tau2.2nd),
        rbar.2nd + qnorm(.90) * sqrt(tau2.2nd)
      )
      Srbar2 <- ESr2 + tau2.2nd
      ProVar <- ESr2 / Srbar2
      rel <- 1 - ProVar
    }
    res6_11 <- c(
      nmeta, nes, nes.used, sum(K, na.rm = T), sum(NK, na.rm = T), rbar.2nd,
      fit$se, CI95, CV80, ESr2, Srbar2, tau2.2nd, se.tau2, tau2.2.2nd, tau2.1.2nd,
      se.tau2.1.2nd, se.tau2.2.2nd, ProVar, rel
    )
  } else {
    print("nes.used <= 1, 1st order meta-analyses are not used.")
    # rbar 取 fit$rbar 或 fit$b
    if (!is.null(fit$rbar) && !is.na(fit$rbar)) {
      rbar <- fit$rbar
    } else if (!is.null(fit$b) && !is.na(fit$b)) {
      rbar <- fit$b
    } else {
      rbar <- NA
      warning("fit$rbar and fit$b are both missing.")
    }
    # rbar.se 取 sqrt(fit$vi) 或 sqrt(fit$se)
    if (!is.null(fit$vi) && length(fit$vi) > 0 && !any(is.na(fit$vi))) {
      rbar.se <- sqrt(fit$vi)
    } else if (!is.null(fit$se) && length(fit$se) > 0 && !any(is.na(fit$se))) {
      rbar.se <- sqrt(fit$se)
    } else {
      rbar.se <- NA
      warning("fit$vi and fit$se are both missing.")
    }
    tau2 <- fit$sigma2
    CI95 <- c(rbar - 1.96 * rbar.se, rbar + 1.96 * rbar.se) # Handbook p.206
    if (nes > 1) {
      K <- sum(K, na.rm = T)
      NK <- sum(NK, na.rm = T)
    }

    if (!is.null(fit$vi) && length(fit$vi) > 0) {
      Sr2 <- fit$vi * K
    } else if (!is.null(fit$se) && length(fit$se) > 0) {
      Sr2 <- (fit$se^2) * K
    } else {
      warning("Both fit$vi and fit$se are missing or empty.")
    }

    Srbar2 <- Sr2 + tau2
    ProVar <- Sr2 / Srbar2
    rel <- 1 - ProVar
    CV80 <- c(rbar - qnorm(.90) * sqrt(tau2), rbar + qnorm(.90) * sqrt(tau2))
    res6_11 <- c(
      nmeta, nes, nes.used, K, NK, rbar, rbar.se, CI95, CV80, Sr2, Srbar2, tau2,
      NA, NA, NA, NA, NA, ProVar, rel
    )
  }
  return(res6_11)
}

DiffTest <- function(est, se) {
  d <- est[1] - est[2]
  sed <- sqrt(sum(se^2))
  zd <- abs(d / sed)
  pvalue <- 2 * (1 - pnorm(zd))
  return(c(d, sed, zd, pvalue))
}

5 Data preparation

5.1 Sample sizes and the indexing matrix

# 清理格式
LBsR$aaa.k <- as.numeric(gsub("[,,]", "", LBsR$aaa.k))
LBsR$hocorrected.t[grepl("原文说用的是HS, 这个Q不知道放那", LBsR$hocorrected.t)] <- NA


# split the data into two parts

#data <- LBsR[relation %in% c("OB", "IBOB.o")]

data <- LBsR[relation %in% c("IB", "IBOB")]

5.2 Data preparation for OB/IB

# Data preparation
## Sample sizes and the indexing matrix
NK <- as.numeric(data$N) # 1st order meta-analyses 中的参与者总数
K <- as.numeric(data$aaa.k) # 1st order meta-analyses 中的效应大小数量
Nbar <- NK / K # 每个原始研究的平均参与者数量
Nmeta <- length(NK) # 1st order meta-analyses 的数量

# Replace missing within-study sample sizes with the median Nbar
median.Nbar <- median(Nbar, na.rm = TRUE) # 计算 Nbar 的中位数(忽略缺失值)
median.K <- median(K, na.rm = TRUE) # 计算 K 的中位数(忽略缺失值)
NK[is.na(Nbar)] <- median.Nbar * K[is.na(Nbar)] # 对于 Nbar 缺失的样本,用中位数 Nbar 乘以对应的 K 替换 NK
NK[is.na(NK)] <- median.Nbar * median.K # 对于 NK 仍缺失的值,用中位数 Nbar 与中位数 K 的乘积替换
Nbar[is.na(Nbar)] <- median.Nbar # 用中位数 Nbar 替换 Nbar 中缺失的值
K[is.na(K)] <- median.K # 用中位数 K 替换 K 中缺失的值

NK <- round(NK, 0)

indM <- matrix(1, Nmeta, 6)
colnames(indM) <- c("ind.rbar", "ind.rhobar", "ind.Sr2", "ind.Src2", "ind.tau2.r", "ind.tau2.rho")

# rbar: Meta-analytic mean correlation (raw)
#   1: HS average correlation   1: HS 平均相关系数
#   2: HO average correlation    2: HO 平均相关系数
#   3: mid point of the prediction interval  3: 预测区间的中点
#   4: no results
# rhobar: Meta-analytic mean correlation (With unreliability correction)
#   1: HS average correlation
#   2: sample size weighted average correlation  2: 样本大小加权平均相关系数
#   3: no results
#   4: rbar and rhobar have different signs  rbar 和 rhobar 的符号不同
#   5: rhobar is smaller than its rbar  rhobar 小于其 rbar
# Sr2: Total variance of the observed correlations  Sr2:观察到的相关系数的总方差
# Without unreliability correction
#   1: Directly report total。 1:直接报告总数
#   2: Compute total variance from Q/NK  2:从 Q/NK 计算观察到的总方差
#   3: Total Variance = Average Sampling Variance + Heterogeneity  3:总方差=平均抽样方差+异质性
#   4: Total Variance = Average Sampling Variance/(1-Percentage)。 4:总方差=平均抽样方差/(1-百分比)
#   5: Reported total variance smaller than Average Sampling variance (<0)
#   6: Computed Sr2 greater than 1
#   7: Computed Sr2 from Src2
#   8: Total Variance = Average Sampling Variance + Heterogeneity (Imputed)
# With unreliability correction
#   1: Directly report with unreliability correction 1:直接报告带有不可靠性校正的值
#   2: Compute total variance from Q/NK  2:从 Q/NK 计算观察到的总方差
#   3: Total Variance = Average Sampling Variance + Heterogeneity
#   4: Total Variance = Average Sampling Variance/(1-Percentage)
#   5: Reported total variance smaller than Average Sampling variance
#   6: Computed Src2 greater than 1
#   7: Compute Src2 from Sr2
#   8: Total Variance = Average Sampling Variance + Heterogeneity (Imputed)
# tau2.r:
#   1: Directly report tau2
#   2: Tau2 computed based on credibility intervals 2:基于可信区间计算的 tau2
#   3: Tau2 computed based on the formula: Total Var-Average Error Var 3:基于公式计算的 tau2:总方差-平均误差方差
#   4: Tau2 imputed using 0.0144  4:使用 0.0144 补充的 tau2
# tau2.rho (with unreliability correction):
#   1: Directly report tau2
#   2: Tau2 computed based on credibility intervals
#   3: Tau2 computed based on the formula: Total Var-Average Error Var
#   4: Tau2 imputed using 0.0144

5.3 Mean correlations

5.3.1 Raw correlations

# Meta-analytic mean correlation (raw)
#--------------------------------------
# 1: HS average correlation
rbar <- data$aaa.hsraw.r
rbar <- as.numeric(rbar)
# 2: HO average correlation
indM[is.na(rbar), 1] <- 2
aaa.horaw.r <- as.numeric(data$aaa.horaw.r)
rbar[is.na(rbar)] <- aaa.horaw.r[is.na(rbar)]

# 3: mid point of the prediction interval
indM[is.na(rbar), 1] <- 3
rbar[is.na(rbar)] <- ((as.numeric(data$hsraw.10cv) + as.numeric(data$hsraw.90cv)) / 2)[is.na(rbar)]

# 4: no results
indM[is.na(rbar), 1] <- 4

5.3.2 Corrected correlations

# Meta-analytic mean correlation (With unreliability correction)
#-----------------------------------------------------------------

# 1: HS average correlation
if (!is.null(data$aaa.hscorrected.r)) {
  rhobar <- suppressWarnings(as.numeric(data$aaa.hscorrected.r))
} else {
  rhobar <- rep(NA, nrow(data))
}

# 2: HO average correlation
indM[is.na(rhobar), 2] <- 2
if (!is.null(data$aaa.hocorrected.r)) {
  hocorr <- suppressWarnings(as.numeric(data$aaa.hocorrected.r))
  rhobar[is.na(rhobar)] <- hocorr[is.na(rhobar)]
}

# 3: no results
indM[is.na(rhobar), 2] <- 3

5.3.3 Missing correlations: Fill by assuming a reliability of 0.8

# 先将 rbar 和 rhobar 转换为字符型
# rbar <- as.character(rbar)
# rhobar <- as.character(rhobar)

# 替换 rbar 中包含 "<-0.1" 的值为 NA
rbar[grepl("<-0.1", rbar)] <- NA

# 替换 rhobar 中包含 "/" 的值为 NA
rhobar[grepl("/", rhobar)] <- NA

# 转换为数值型
rbar <- as.numeric(rbar)
rhobar <- as.numeric(rhobar)
# Missing data handling: assume a reliability, i.e., 0.8
# fill missing values with corresponding raw mean correlations
# --------------------------------------------------------------------------

rhobar[is.na(rhobar)] <- rbar[is.na(rhobar)] / 0.8
rhobar[which(rhobar > 1)] <- NA # 超过1的情况,置为NA
# fill missing values with corresponding corrected mean correlations
rbar[is.na(rbar)] <- rhobar[is.na(rbar)] * 0.8

# Reliability estimates for each 1st meta-analysis
# 计算 rbar/rhobar 或直接设为 0.8
# rbar/rhobar or set to 0.8
rel.meta <- rbar / rhobar
rel.meta[rhobar == 0] <- 0.8 # 当无法用 rbar/rhobar 估计时,设为 0.8
rel.meta[rbar == 0] <- 0.8 # 当无法用 rbar/rhobar 估计时,设为 0.8
rel.meta[is.na(rel.meta)] <- 0.8

# Data cleaning
# 对于可靠性不合理的研究,替换 rhobar
# 1. 当 rbar 与 rhobar 符号不一致时
sel <- which(rel.meta < 0) # 处理 rbar 和 rhobar 符号不一致
indM[sel, 2] <- 4
rhobar[sel] <- rbar[sel] / 0.8
rel.meta[sel] <- 0.8

# 2. 当 rhobar 小于对应的 rbar 时(计算出来的可靠性大于1)
# rhobar is smaller than its rbar
sel <- which(rel.meta > 1)
indM[sel, 2] <- 5
rhobar[sel] <- rbar[sel] / 0.8
rel.meta[sel] <- 0.8

# 3. 对于可靠性小于 0.6 的情况,直接设为 0.6,并重新计算 rhobar
# reliability smaller than 0.6 is set to 0.6
sel <- which(rel.meta < 0.6)
rel.meta[sel] <- 0.6
rhobar[sel] <- rbar[sel] / rel.meta[sel]

5.4 Heterogeneity: tau2

### tau2 of raw correlations
# tau2:  1 Directly report tau2
#-------------------------------------------------
tau2.r <- (data$hsraw.sdtrue)^2 # 使用原始数据中的标准差(平方得到变异数)
tau2.r[is.na(tau2.r)] <- data$hsraw.var.true[is.na(tau2.r)]
tau2.r[is.na(tau2.r)] <- (data$horaw.t^2)[is.na(tau2.r)]
tau2.r[is.na(tau2.r)] <- data$horaw.t2[is.na(tau2.r)]
tau2.r <- as.numeric(tau2.r)
# 2: Tau2 computed based on credibility intervals
#---------------------------------------------------------------
indM[is.na(tau2.r), 5] <- 2
# credibility level: 80%
UCV <- as.numeric(data$hsraw.90cv)
LCV <- as.numeric(data$hsraw.10cv)
CV <- (UCV - LCV) / 2 / qnorm(0.90) # 标准正态分布在 90% 分位处的值
tau2.r[is.na(tau2.r)] <- (CV[is.na(tau2.r)])^2

5.4.1 tau2 of corrected correlations

data$hocorrected.t <- as.numeric(data$hocorrected.t)
data$hocorrected.t2 <- as.numeric(data$hocorrected.t2)
data$hscorrected.sdtrue <- as.numeric(data$hscorrected.sdtrue)
#  tau2: 1 Directly report tau2
#-----------------------------------------------------------------------
if ((is.null(data$aaa.hscorrected.r) == F) | (is.null(data$aaa.hocorrected.r) == F)) {
  tau2.rho <- (data$hscorrected.sdtrue)^2 # Heterogeneity based on HS corrected SD
  tau2.rho[is.na(tau2.rho)] <- data$hscorrected.var.true[is.na(tau2.rho)]

  # 如果 HO 校正的 T2 值存在,则使用它填补缺失
  if (!is.null(data$hocorrected.t2)) {
    tau2.rho[is.na(tau2.rho)] <- data$hocorrected.t2[is.na(tau2.rho)]
  }
  # 如果 HO 校正的 T 值存在,则使用其平方填补缺失
  if (!is.null(data$hocorrected.t)) {
    tau2.rho[is.na(tau2.rho)] <- (data$hocorrected.t^2)[is.na(tau2.rho)]
  }

  # Tau2: 2 Tau2 computed based on credibility intervals
  #----------------------------------------------------------------------
  indM[is.na(tau2.rho), 6] <- 2
  # credibility level: 80%
  UCV <- as.numeric(data$hscorrected.90cv)
  LCV <- as.numeric(data$hscorrected.10cv)
  CV <- (UCV - LCV) / 2 / qnorm(0.90)
  tau2.rho[is.na(tau2.rho)] <- (CV[is.na(tau2.rho)])^2
} else {
  tau2.rho <- rep(NA, nrow(data))
}

5.4.2 Missing tau2: fill by assuming a reliability of 0.8

tau2.r <- as.numeric(tau2.r)
tau2.rho <- as.numeric(tau2.rho)
rel.meta <- as.numeric(rel.meta)

tau2.rho[is.na(tau2.rho)] <- tau2.r[is.na(tau2.rho)] / (rel.meta[is.na(tau2.rho)]^2)
tau2.r[is.na(tau2.r)] <- tau2.rho[is.na(tau2.r)] * (rel.meta[is.na(tau2.r)]^2)

5.5 Total variance of observed correlations Sr2

5.5.1 Total variance of raw observed correlations

## Total variance of observed correlations Sr2
### Total variance of raw observed correlations

# Sr2: 1 Directly report
#------------------------------------------------------------------------
Sr2 <- (data$hsraw.sdcorr)^2
# 如果 hsraw.var.obs.total 不为空,则用它填补 Sr2 中的 NA
if (!is.null(data$hsraw.var.obs.total)) {
  Sr2[is.na(Sr2)] <- data$hsraw.var.obs.total[is.na(Sr2)]
}

# Sr2: 2 Compute total variance from Q/NK
#-------------------------------------------------------------------------
indM[is.na(Sr2), 3] <- 2
Q <- as.numeric(data$horaw.q)
Sr2.tmp <- (Q - (K - 1)) / (NK - NK / K) # Handbook p.271 Equ. 14.23
Sr2.tmp[Sr2.tmp < 0] <- NA
Sr2[is.na(Sr2)] <- Sr2.tmp[is.na(Sr2)]

# Sr2: 3 Total Variance = Average Sampling Variance + Heterogeneity
#-------------------------------------------------------------------------
indM[is.na(Sr2), 3] <- 3

# Average Sampling Variance (参考 Hunter & Schmidt p.101)
# 这里的 rbar、Nbar 需要在前面代码里已正确计算
AveSig2e <- ((1 - rbar^2)^2) / (Nbar - 1)

# 如果上一步失败或 NA,可以使用 hsraw.sdartifact 的平方
Sig2e <- (data$hsraw.sdartifact)^2
AveSig2e[is.na(AveSig2e)] <- Sig2e[is.na(AveSig2e)]
# 如果依旧是 NA,可以使用 hsraw.var.error
AveSig2e[is.na(AveSig2e)] <- data$hsraw.var.error[is.na(AveSig2e)]
# 去除小于 0 的异常值
AveSig2e[AveSig2e < 0] <- NA

AveSig2e <- as.numeric(AveSig2e)
tau2.r <- as.numeric(tau2.r)


# 计算总方差 = 平均抽样方差 + 异质性方差
TotVar <- AveSig2e + tau2.r
Sr2[is.na(Sr2)] <- TotVar[is.na(Sr2)]

# Sr2: 4 Total Variance = Average Sampling Variance/(1 - Percentage)
#-------------------------------------------------------------------------
indM[is.na(Sr2), 4] <- 4
Sr2[is.na(Sr2)] <- (AveSig2e / (1 - data$horaw.i2))[is.na(Sr2)]

# Sr2: 5 Reported total variance smaller than Average Sampling variance
#-------------------------------------------------------------------------
Sr2 <- as.numeric(Sr2)
indM[which(Sr2 - AveSig2e < 0), 3] <- 5
Sr2[which(Sr2 - AveSig2e < 0)] <- NA
Sr2[Sr2 < 0] <- NA

# Sr2: 6 Computed Sr2 greater than 1
#-------------------------------------------------------------------------
indM[which(Sr2 > 1), 3] <- 6
Sr2[which(Sr2 > 1)] <- NA

5.5.2 Total variance of corrected observed correlations

if ((is.null(data$aaa.hscorrected.r) == F) | (is.null(data$aaa.hocorrected.r) == F)) {
  # 1: Directly report
  #-------------------------------------------------------------------------
  Src2 <- (data$hscorrected.sdcorr)^2
  if (is.null(data$hscorrected.var.obs.total) == F) {
    Src2[is.na(Src2)] <- data$hscorrected.var.obs.total[is.na(Src2)]
  }

  # 2: Compute total variance from Q/NK
  #-------------------------------------------------------------------------
  indM[is.na(Src2), 4] <- 2
  Q <- data$hocorrected.q
  Src2.tmp <- ((Q - (K - 1)) / (NK - NK / K)) # Handbook p.271 Equ. 14.23
  Src2.tmp[Src2.tmp < 0] <- NA
  Src2[is.na(Src2)] <- Src2.tmp[is.na(Src2)]

  # 3: Total Variance = Average Sampling Variance + Heterogeneity
  #-------------------------------------------------------------------------
  indM[is.na(Src2), 4] <- 3
  AveSig2e.rho <- ((1 - rbar^2)^2) / (Nbar - 1) / (rel.meta^2) # Hunter & Schmidt p.144
  AveSig2e.rho[is.na(AveSig2e.rho)] <- ((data$hscorrected.sdartifact)^2)[is.na(AveSig2e.rho)]
  if (is.null(data$hscorrected.varerror) == F) {
    AveSig2e.rho[is.na(AveSig2e.rho)] <- data$hscorrected.varerror[is.na(AveSig2e.rho)]
  }
  AveSig2e.rho[which(AveSig2e.rho < 0)] <- NA

  TotVar.rho <- AveSig2e.rho + tau2.rho
  Src2[is.na(Src2)] <- TotVar.rho[is.na(Src2)]

  # 4: Total Variance = Average Sampling Variance/(1 - Percentage)
  #-------------------------------------------------------------------------
  indM[is.na(Src2), 4] <- 4
  Src2[is.na(Src2)] <- (AveSig2e.rho / (1 - data$hocorrected.i2))[is.na(Src2)]

  # 5: Reported total variance smaller than Average Sampling variance
  #-------------------------------------------------------------------------
  indM[which(Src2 - AveSig2e.rho < 0), 4] <- 5
  Src2[Src2 - AveSig2e.rho < 0] <- NA
  Src2[Src2 < 0] <- NA

  # 6: Computed Src2 greater than 1
  #-------------------------------------------------------------------------
  indM[which(Src2 > 1), 4] <- 6
  Src2[which(Src2 > 1)] <- NA
} else {
  Src2 <- AveSig2e.rho <- rep(NA, nrow(data))
}

5.5.3 Missing Src2: fill by assuming a reliability of 0.8

# Missing data handling: assume a high reliability, i.e., 0.8

# 7: Computed Src2 from Sr2
indM[is.na(Src2), 4] <- 7
Src2[is.na(Src2)] <- Sr2[is.na(Src2)] / (rel.meta[is.na(Src2)]^2)

# 8: Computed Sr2 from Src2
indM[is.na(Sr2), 3] <- 7
Sr2[is.na(Sr2)] <- Src2[is.na(Sr2)] * (rel.meta[is.na(Sr2)]^2)

5.6 Clean data and assemble the data for 2nd order meta-analyses

5.6.1 Impute missing heterogeneity

# Method 1: tau2 = Total Variance - Average Error Variance
#-------------------------------------------------------------------------
# Raw correlations
tau2.r.f <- tau2.r
indM[is.na(tau2.r), 5] <- 3
tau2.r.f[is.na(tau2.r.f)] <- Sr2[is.na(tau2.r.f)] - AveSig2e[is.na(tau2.r.f)]
tau2.r.f[tau2.r.f == 0] <- NA
tau2.r.f[(Sr2 - tau2.r.f) == 0] <- NA
# tau2.r.f[tau2.r.f > 1] = NA  # 如果tau2超过1,可按需要置为NA

# Corrected correlations
tau2.rho.f <- tau2.rho
indM[is.na(tau2.rho), 6] <- 3
tau2.rho.f[is.na(tau2.rho.f)] <- Src2[is.na(tau2.rho.f)] - AveSig2e.rho[is.na(tau2.rho.f)]
# tau2.rho.f[tau2.rho.f < 0] = NA
tau2.rho.f[tau2.rho.f == 0] <- NA
tau2.rho.f[tau2.rho.f > 1] <- NA

# Method 2: tau2 = 0.0144 from a large meta-analysis on heterogeneity in psychological research
# Method 2: 采用0.0144(来源于心理学领域大规模meta分析的异质性估计)
#-------------------------------------------------------------------------
# Raw correlations
# indM[is.na(tau2.r.f), 5] = 4
# tau2.r.f[is.na(tau2.r.f)] = 0.0144
# Corrected correlations
# indM[is.na(tau2.rho.f), 6] = 4
# tau2.rho.f[is.na(tau2.rho.f)] = 0.0144

5.6.2 Impute missing total variances

# Total Variance = Average Sampling Variance + Heterogeneity (Imputed)

# Raw correlations
Sr2.f <- Sr2
indM[is.na(Sr2.f), 3] <- 8
TotVar <- AveSig2e + tau2.r.f
Sr2.f[is.na(Sr2.f)] <- TotVar[is.na(Sr2.f)]

# Corrected correlations
Src2.f <- Src2
indM[is.na(Src2.f), 4] <- 8
TotVar <- AveSig2e.rho + tau2.rho.f
Src2.f[is.na(Src2.f)] <- TotVar[is.na(Src2.f)]


Sr2.f[is.na(Sr2.f)] <- mean(Sr2.f, na.rm = TRUE)
indM[is.na(Sr2.f), 3] <- 9

Src2.f[is.na(Src2.f)] <- mean(Src2.f, na.rm = TRUE)
indM[is.na(Src2.f), 4] <- 9

5.6.3 Output data for the 2nd order meta-analyses

library(readxl)
library(data.table)

# 读取 Excel 文件中名为 "国商reference" 的 sheet
meta_coding <- as.data.table(read_excel("meta analysis coding.xlsx", sheet = "国商reference"))


data[aaa.articleid == "Liang2022", aaa.articleid := 20252022]
data[aaa.articleid == "LiuJOM", aaa.articleid := 20252023]


data <- merge(data, 
              meta_coding[, .(aaa.articleid, Author, year)], 
              by = "aaa.articleid", 
              all.x = TRUE, 
              sort = FALSE)
#Reverse coding(OB)
# data$reverse.VariablesOBX <- as.numeric(data$reverse.VariablesOBX)
# data$reverse.VariablesOBY <- as.numeric(data$reverse.VariablesOBY)
# 
# # 第二步:将 rbar、rhobar 分别乘以这两个数值
# rbar   <- rbar   * data$reverse.VariablesOBX * data$reverse.VariablesOBY
# rhobar <- rhobar * data$reverse.VariablesOBX * data$reverse.VariablesOBY

# # # Reverse coding(IB)
data$reverse.VariablesIBX <- as.numeric(data$reverse.VariablesIBX)
data$reverse.VariablesIBY <- as.numeric(data$reverse.VariablesIBY)

# 第二步:将 rbar、rhobar 分别乘以这两个数值
rbar   <- rbar   * data$reverse.VariablesIBX * data$reverse.VariablesIBY
rhobar <- rhobar * data$reverse.VariablesIBX * data$reverse.VariablesIBY
# 

 meta.id <- trim.metaid(data$aaa.articleid) # 提取并排序 meta.id


# 先去除两边空格
data$Xx <- str_trim(data$Xx)
data$Yy <- str_trim(data$Yy)
# 将 "perception of support" 替换为 "perceptions of support"
data$Xx <- sub("^perceptions of support(@.*)", "perception of support\\1", data$Xx)

data$Yy <- sub("^perceptions of support(@.*)", "perception of support\\1", data$Yy)


# IB中需要替换的名称
columns_to_replace <- c("Xx", "Yy")


# # 要替换的值和新值
# values_to_replace <- c("financial outcome", "general performance", 
#                        "innovation", "Innovation",
#                        "internationalization", "Internationalization", 
#                        "non-marketing outcome","marketing outcome","Organizational Outcome")
# new_value <- "organizational outcome"
# 
# # 替换指定列中的值
# 
# data=data[, (columns_to_replace) := lapply(.SD, function(x) {
#   ifelse(x %in% values_to_replace, new_value, x)
# }), .SDcols = columns_to_replace]

# 要替换的列
columns_to_replace <- c("Xx", "Yy")

# 要替换的值
values_to_replace <- c("financial outcome", "general performance", 
                       "innovation", "Innovation",
                       "internationalization", "Internationalization", 
                       "non-marketing outcome", "marketing outcome", "Organizational Outcome")

# 替换后的统一值
new_value <- "organizational outcome"

#
 data$Xx <- sub("^strategic orientation(@.*)", "strategic leadership\\1", data$Xx)
#
 data$Yy <- sub("^strategic orientation(@.*)", "strategic leadership\\1", data$Yy)

# 替换逻辑:保留后缀部分(@xxx)
for (old_value in values_to_replace) {
  pattern <- paste0("^", old_value, "(@.*)?")       # 匹配以 old_value 开头,后面可跟 @...
  replacement <- paste0(new_value, "\\1")           # 用新值替换,并保留原后缀
  data[, (columns_to_replace) := lapply(.SD, function(x) sub(pattern, replacement, x)),
       .SDcols = columns_to_replace]
}

#  替换factor为&Market Concentration的variable和category
 columns_to_replace <- c("ordervariablefactor1", "ordervariablefactor2")
#
#  正确的 pattern:匹配整串(从头到 &Market Concentration)
 pattern <- "^[^@&]+@[^@&]+(&Market Concentration)"
#
#  正确的 replacement:完全替换成新的前缀和中间部分,只保留 & 后的内容
 replacement <- "organizational capability@COMPETITIVE ADVANTAGES\\1"

#  应用替换
 data[, (columns_to_replace) := lapply(.SD, function(x) gsub(pattern, replacement, x)),
      .SDcols = columns_to_replace]
#
#
#
 # 替换 strategic orientation-> strategic leadership,以及COMPETITIVE ADVANTAGES
#
 data$ordervariablefactor1 <- sub("^strategic orientation(@.*)", "strategic leadership\\1", data$ordervariablefactor1)
#
 data$ordervariablefactor2 <- sub("^strategic orientation(@.*)", "strategic leadership\\1", data$ordervariablefactor2)
 
 
data[ordervariablefactor1 == "organizational capability@COMPETITIVE ADVANTAGES&Market Concentration", 
     `:=`(
       Xx = Yy,
       Yy = "organizational capability@COMPETITIVE ADVANTAGES"
     )]



# factorX = data$aaa.variable1
# factorY = data$aaa.variable2
# 
# # Xx 和 Yy 的所属的类别
# XAnalysisCategory <- data$XX
# YAnalysisCategory <- data$YY
 
 OrderVariableFactor1 <- data$ordervariablefactor1
 OrderVariableFactor2 <- data$ordervariablefactor2

#Author and Year

Author <- data$Author
Year <- data$year

aaa.hl.powerdistance    = data$aaa.hl.powerdistance
aaa.individulism.collectivism   = data$aaa.individulism.collectivism
aaa.masculinity.femininity  = data$aaa.masculinity.femininity
aaa.hl.uncertaintyavoidance = data$aaa.hl.uncertaintyavoidance
aaa.longterm.shortterm  = data$aaa.longterm.shortterm
aaa.indulgence.restraint= data$aaa.indulgence.restraint

# Extact and get order the X and Y categories
# 提取并排序 X 和 Y 的类别
XCategory <- data$Xx
XCategory <- str_trim(XCategory)
XCategory.names <- names(table(XCategory)) # X 类别中所有不重复的名称

YCategory <- data$Yy
YCategory <- str_trim(YCategory)
YCategory.names <- vector("list", length = length(XCategory.names))
names(YCategory.names) <- XCategory.names

for (i in 1:length(XCategory.names)) {
  sel <- which(XCategory == XCategory.names[i])
  YCategory.sub <- YCategory[sel]
  tmp <- names(table(YCategory.sub))
  YCategory.names[[i]] <- tmp
}
YCategory.names2 <- unique(unlist(YCategory.names))

# 计算置信区间(H&S book p.230,标准误设置为 sqrt(Src2.f/K))
CI95_LL <- rhobar - 1.96 * sqrt(Src2.f / K)
CI95_UL <- rhobar + 1.96 * sqrt(Src2.f / K)

# 计算80%信用区间(基于 tau2.rho.f)
CR80_LL <- rhobar - qnorm(0.9) * sqrt(tau2.rho.f)
CR80_UL <- rhobar + qnorm(0.9) * sqrt(tau2.rho.f)

First.Meta <- data.frame(
  meta.id, # 由 trim.metaid(data$aaa.articleid) 得到
  Author, # 来自 data$Author
  Year, # 来自 data$Year
  # group,           # 来自 data$subgroup.country
  XCategory, # 来自 data$Xx(已 str_trim 处理)
  YCategory, # 来自 data$Yy(已 str_trim 处理)
  OrderVariableFactor1, # 来自 data$ordervariablefactor1
  OrderVariableFactor2, # 来自 data$ordervariablefactor2
  aaa.hl.powerdistance, # 来自 data$aaa.hl.powerdistance
  aaa.individulism.collectivism, # 来自 data$aaa.individulism.collectivism
  aaa.masculinity.femininity, # 来自 data$aaa.masculinity.femininity
  aaa.hl.uncertaintyavoidance, # 来自 data$aaa.hl.uncertaintyavoidance
  aaa.longterm.shortterm, # 来自 data$aaa.longterm.shortterm
  aaa.indulgence.restraint, # 来自 data$aaa.indulgence.restraint
  K, # 第一阶 meta 分析中的效应量数
  NK, # 总样本量
  rbar, # 原始平均相关
  Sr2.f, # 补充后的原始总方差
  tau2.r.f, # 原始异质性估计
  rhobar, # 原始校正后的相关系数
  tau2.rho.f, # 校正后异质性估计
  Src2.f, # 补充后的校正总方差
  CI95_LL, # 95%置信下限
  CI95_UL, # 95%置信上限
  CR80_LL, # 80%信用区间下限
  CR80_UL, # 80%信用区间上限
  rel.meta, # 可靠性指标
  AveSig2e, # 平均抽样方差(raw)
  AveSig2e.rho, # 平均抽样方差(校正)
  indM # 填补或修正方法记录矩阵/数据框
)


  write.xlsx(First.Meta, "VariablesIB1stOrdInput.xlsx", col.names = TRUE, row.names = FALSE)

6 2nd Order Meta-Analysis

6.1 OB/IB Variables

# 计算原始和校正相关的采样方差
vi <- Sr2.f / K
vic <- Src2.f / K

vi <- as.numeric(vi)

vic <- as.numeric(vic)



## Table 2 (Schmidt & Oh, 2008)
T2.col.names <- c(
  "XCategory", "YCategory", "Nmeta", "Nes", "Nes.used", "sumk", "sumN",
  "C6_Mean R", "C6_SE", "CI.LL", "CI.UL", "CV.LL", "CV.UL",
  "C7_Sampling Error Variance", "C8_Total Variance", "C9_True Variance", "C9_SE",
  "L1_Within-Meta Variance", "L2_Between-Meta Variance",
  "SE_L1_Within-Meta Variance", "SE_L2_Between-Meta Variance",
  "C10_Prop of Error Variance", "C11_Reliability"
)

# 每个X类别下有多少种Y类别
n.ycat.l <- lapply(YCategory.names, function(x) length(x))
# 总的 X-Y 组合数
n.xycat <- sum(unlist(n.ycat.l))
# X类别的唯一数量
n.xcat <- length(XCategory.names)

# 初始化Table2的矩阵
Table2SO.uc.y <- matrix(NA, n.xycat, 23)
colnames(Table2SO.uc.y) <- T2.col.names
rownames(Table2SO.uc.y) <- paste0("CatXY", 1:n.xycat)
Table2SO.c.y <- Table2SO.uc.y

# 初始化计数器
counti <- 0
branch_counter <- 0

for (j in 1:n.xcat) {
  crit1 <- (XCategory == XCategory.names[j])
  for (w in 1:n.ycat.l[[j]]) {
    counti <- counti + 1
    Table2SO.uc.y[counti, 1] <- XCategory.names[j]
    Table2SO.c.y[counti, 1] <- XCategory.names[j]
    Table2SO.uc.y[counti, 2] <- YCategory.names[[j]][w]
    Table2SO.c.y[counti, 2] <- YCategory.names[[j]][w]

    crit2 <- (YCategory == YCategory.names[[j]][w])
    sel <- which(crit1 * crit2 == 1)
    nes <- length(sel)
    nes.narm <- min(c(nes, length(na.omit(rbar[sel]))))
    sel.narm <- sel[is.na(rbar[sel]) == FALSE]
    sid <- meta.id[sel]
    nmeta <- length(unique(sid))
    if (nes.narm > 1) { # multiple effect sizes from multiple 1st-order meta analyses
      # If all effect sizes come from one 1st-order meta
      # MLM method does not work
      # We use RVE methods and assume the between-effect-size correlation = 0.8
      fit <- myrma.des(yi = rbar[sel], vi = vi[sel], sid, method = "MLM")
      fitc <- myrma.des(yi = rhobar[sel], vi = vic[sel], sid, method = "MLM")
      if (is.na(fit$b) | is.null(fit$b)) {
        fit <- list(rbar = NA_real_, sigma2 = NA_real_, vi = NA_real_, k = 0, nmeta = nmeta)
      }
      if (is.na(fitc$b) | is.null(fitc$b)) {
        fitc <- list(rbar = NA_real_, sigma2 = NA_real_, vi = NA_real_, k = 0, nmeta = nmeta)
      }
      if ((is.null(fit$rbar) - 1) + (is.null(fitc$rbar) - 1) < 0) {
        # 更新计数器,并打印当前组合信息及累计次数
        branch_counter <- branch_counter + 1
        cat(
          "执行rma分支的组合:", XCategory.names[j], "和", YCategory.names[[j]][w],
          ",累计执行次数:", branch_counter, "\n"
        )

        fit <- try(rma(yi = rbar[sel], vi = vi[sel]))
        fitc <- try(rma(yi = rhobar[sel], vi = vic[sel]))

        if (inherits(fit, "try-error")) {
          print("yyx fit error")
          fit <- list(b = NA, se = NA, sigma2 = NA, se.tau2 = NA, ci.lb = NA, ci.ub = NA)
        } else {
          fit$sigma2 <- fit$tau2
          cat("fit$k:", fit$k, "\n")
          if (fit$k == 1) {
            cat("打印fit结果:\n")
            print(fit$b)
            print(fit$se)
            print(fit$sigma2)
            print(fit)
          }
        }

        if (inherits(fitc, "try-error")) {
          print("yyx fit error")
          fitc <- list(b = NA, se = NA, sigma2 = NA, se.tau2 = NA, ci.lb = NA, ci.ub = NA)
        } else {
          fitc$sigma2 <- fitc$tau2
          cat("fitc$k:", fitc$k, "\n")
          if (fitc$k == 1) {
            cat("打印fitc结果:\n")
            print(fitc$b)
            print(fitc$se)
            print(fit$sigma2)
            print(fitc)
          }
        }
      }
    } else if (nes.narm == 1) { # only one effect size in this category
      print("只有一个效应量")
      fit <- list(
        rbar = rbar[sel.narm], sigma2 = tau2.r.f[sel.narm],
        vi = vi[sel.narm], k = 1, nmeta = nmeta
      )
      fitc <- list(
        rbar = rhobar[sel.narm], sigma2 = tau2.rho.f[sel.narm],
        vi = vic[sel.narm], k = 1, nmeta = nmeta
      )
    } else { # zero effect in this category
      fit <- list(rbar = NA, sigma2 = NA, vi = NA, k = 0, nmeta = nmeta)
      fitc <- list(rbar = NA, sigma2 = NA, vi = NA, k = 0, nmeta = nmeta)
    }
    Ksub <- K[sel]
    NKsub <- NK[sel]
    if (nes.narm != nes) {
      Ksub[is.na(rbar[sel]) == TRUE] <- NA
      NKsub[is.na(rbar[sel]) == TRUE] <- NA
    }
    Table2SO.uc.y[counti, 3:23] <- meta2nd.Table2SO(fit, Ksub, NKsub, nmeta)
    Table2SO.c.y[counti, 3:23] <- meta2nd.Table2SO(fitc, Ksub, NKsub, nmeta)
    # result <- meta2nd.Table2SO(fit, Ksub, NKsub, nmeta)
    # result2 <- meta2nd.Table2SO(fitc, Ksub, NKsub, nmeta)
  }
}
## [1] "运行成功"
## [1] "运行成功"
## [1] "运行成功"
## [1] "运行成功"
## [1] "运行成功"
## [1] "运行成功"
## [1] "运行成功"
## [1] "运行成功"
## [1] "运行成功"
## [1] "运行成功"
## [1] "运行成功"
## [1] "运行成功"
## [1] "运行成功"
## [1] "运行成功"
## [1] "运行成功"
## [1] "运行成功"
## [1] "运行成功"
## [1] "运行成功"
# 转换为 data.table
Table2SO.uc.y <- as.data.table(Table2SO.uc.y)
Table2SO.c.y  <- as.data.table(Table2SO.c.y)

# 拆分 XCategory 和 YCategory 列
Table2SO.uc.y[, c("XCategory", "XAnalysisCategory") := tstrsplit(XCategory, "@", fixed = TRUE)]
Table2SO.uc.y[, c("YCategory", "YAnalysisCategory") := tstrsplit(YCategory, "@", fixed = TRUE)]

Table2SO.c.y[, c("XCategory", "XAnalysisCategory") := tstrsplit(XCategory, "@", fixed = TRUE)]
Table2SO.c.y[, c("YCategory", "YAnalysisCategory") := tstrsplit(YCategory, "@", fixed = TRUE)]

# 重新排列列顺序
setcolorder(Table2SO.uc.y,
  c("XCategory", "XAnalysisCategory", "YCategory", "YAnalysisCategory",
    setdiff(names(Table2SO.uc.y), c("XCategory", "XAnalysisCategory", "YCategory", "YAnalysisCategory")))
)

setcolorder(Table2SO.c.y,
  c("XCategory", "XAnalysisCategory", "YCategory", "YAnalysisCategory",
    setdiff(names(Table2SO.c.y), c("XCategory", "XAnalysisCategory", "YCategory", "YAnalysisCategory")))
)

 write.xlsx(Table2SO.uc.y, "VariablesIB_Uncorrected.xlsx",
   col.names = T,
   row.names = T, sheetName = "Overall", append = T
 )
 write.xlsx(Table2SO.c.y, "VariablesIB_Corrected.xlsx",
  col.names = T,
   row.names = T, sheetName = "Overall", append = T
 )

6.1.1 Table 2: Uncorrected Variables

# SOOutput(Table2SO.uc.y, NewVariables = NULL, Order = "-sumk", title = "Uncorrected Variables", TName = TRUE, note = TRUE, Cnote = FALSE, digits = FALSE)
SOOutput(Table2SO.uc.y, NewVariables = NULL, Order = "-sumk", title = "Uncorrected Variables", TName = TRUE, note = TRUE, Cnote = FALSE, digits =TRUE)
## SOOutput() is an R function for extracting and organizing second-order
## meta-analysis results.
## It extracts the following variables:
##   XCategory, YCategory,
## Nmeta, sumk, sumN,
##   C6_Mean.R, C6_SE, CI.LL, CI.UL, CV.LL, CV.UL,
##  
## C7_Sampling.Error.Variance, C8_Total.Variance, C9_True.Variance,
##  
## C10_Prop.of.Error.Variance, C11_Reliability.
## Additional parameters:
##   -
## NewVariables: Optional additional variables to include.
##   - Order: Specifies the
## sorting column (e.g., '-sumk' for descending order).
##   - title: Title for the
## output table.
##   - TName: If TRUE, renames the output columns to more intuitive
## names.
##   - digits: If TRUE, all numeric columns (except XCategory and YCategory)
## will be rounded to 3 decimal places and displayed in fixed notation; if FALSE,
## they remain unchanged.Uncorrected Variables
## ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
##                          X Category                      Y Category Number of Studies  Total k      Total N C6_Mean R    S.E. CI Lower CI Upper CV Lower CV Upper C7_Sampling Error Variance C8_Total Variance C9_True Variance C10_Prop of Error Variance Reliability
## ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
## 1   organizational outcome          strategic leadership                        6.000 4284.000 10860990.000     0.085 (0.044)   -0.001    0.171   -0.054    0.224                      0.000             0.012            0.012                      0.003       0.997
## 2   organizational outcome          strategic process                          11.000 2744.000  3345094.000     0.204 (0.033)    0.139    0.270    0.053    0.355                      0.000             0.014            0.014                      0.032       0.968
## 3   organizational outcome          organizational resource                    14.000 2669.000  5870231.000     0.236 (0.042)    0.153    0.318    0.022    0.450                      0.000             0.028            0.028                      0.014       0.986
## 4   organizational outcome          organizational outcome                     11.000 1161.000  1172445.000     0.242 (0.034)    0.175    0.308    0.094    0.390                      0.001             0.014            0.013                      0.061       0.939
## 5   detering institutional factor   organizational outcome                      4.000  754.000  1070059.000    -0.019 (0.016)   -0.050    0.012   -0.109    0.071                      0.000             0.005            0.005                      0.072       0.928
## 6   organizational outcome          organizational capability                   5.000  349.000   205931.000     0.359 (0.060)    0.242    0.476    0.179    0.539                      0.004             0.023            0.020                      0.153       0.847
## 7   attracting institutional factor detering institutional factor               1.000  189.000    59589.000    -0.076 (0.023)   -0.121   -0.032   -0.118   -0.034                      0.000             0.002            0.001                      0.299       0.701
## 8   attracting institutional factor attracting institutional factor             1.000  184.000    58013.000     0.135 (0.075)   -0.011    0.281   -0.132    0.402                      0.000             0.044            0.043                      0.008       0.992
## 9   strategic process               strategic process                           1.000  165.000  1514613.000     0.026 (0.008)    0.011    0.040    0.010    0.041                      0.000             0.000            0.000                      0.562       0.438
## 10  organizational capability       organizational resource                     2.000  120.000    73507.000     0.081 (0.034)    0.014    0.148   -0.042    0.204                      0.001             0.010            0.009                      0.100       0.900
## 11  attracting institutional factor organizational outcome                      1.000   59.000   229268.000     0.273 (0.042)    0.192    0.355    0.192    0.355                      0.006             0.010            0.004                      0.605       0.395
## 12  attracting institutional factor strategic process                           1.000   50.000    13908.000     0.217 (0.058)    0.102    0.331    0.089    0.344                      0.002             0.012            0.010                      0.172       0.828
## 13  organizational capability       strategic process                           1.000   50.000    11500.000     0.490 (0.045)    0.402    0.578    0.334    0.646                      0.002             0.017            0.015                      0.125       0.875
## 14  organizational resource         organizational resource                     1.000   38.000    12907.000     0.175 (0.037)    0.102    0.247    0.112    0.238                      0.003             0.005            0.002                      0.516       0.484
## 15  strategic leadership            strategic process                           2.000   33.000    21783.000     0.167 (0.125)   -0.078    0.412   -0.057    0.391                      0.001             0.031            0.031                      0.020       0.980
## 16  organizational resource         others                                      1.000   26.000    14065.000     0.151 (0.065)    0.024    0.278    0.065    0.237                      0.004             0.008            0.005                      0.455       0.545
## 17  detering institutional factor   organizational resource                     1.000   11.000     3862.000    -0.197 (0.045)   -0.285   -0.108   -0.197   -0.197                      0.004             0.004            0.000                      1.000       0.000
## ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

6.1.2 Table 2: Corrected Variables

SOOutput(Table2SO.c.y, NewVariables = NULL, Order = "-sumk", title = "Uncorrected Variables", TName = TRUE, note = TRUE, Cnote = FALSE, digits = TRUE)
## SOOutput() is an R function for extracting and organizing second-order
## meta-analysis results.
## It extracts the following variables:
##   XCategory, YCategory,
## Nmeta, sumk, sumN,
##   C6_Mean.R, C6_SE, CI.LL, CI.UL, CV.LL, CV.UL,
##  
## C7_Sampling.Error.Variance, C8_Total.Variance, C9_True.Variance,
##  
## C10_Prop.of.Error.Variance, C11_Reliability.
## Additional parameters:
##   -
## NewVariables: Optional additional variables to include.
##   - Order: Specifies the
## sorting column (e.g., '-sumk' for descending order).
##   - title: Title for the
## output table.
##   - TName: If TRUE, renames the output columns to more intuitive
## names.
##   - digits: If TRUE, all numeric columns (except XCategory and YCategory)
## will be rounded to 3 decimal places and displayed in fixed notation; if FALSE,
## they remain unchanged.Uncorrected Variables
## ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
##                          X Category                      Y Category Number of Studies  Total k      Total N C6_Mean R    S.E. CI Lower CI Upper CV Lower CV Upper C7_Sampling Error Variance C8_Total Variance C9_True Variance C10_Prop of Error Variance Reliability
## ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
## 1   organizational outcome          strategic leadership                        6.000 4284.000 10860990.000     0.100 (0.050)    0.002    0.199   -0.059    0.260                      0.000             0.016            0.016                      0.003       0.997
## 2   organizational outcome          strategic process                          11.000 2744.000  3345094.000     0.257 (0.042)    0.174    0.340    0.064    0.449                      0.001             0.023            0.023                      0.030       0.970
## 3   organizational outcome          organizational resource                    14.000 2669.000  5870231.000     0.286 (0.049)    0.189    0.383    0.036    0.537                      0.001             0.039            0.038                      0.015       0.985
## 4   organizational outcome          organizational outcome                     11.000 1161.000  1172445.000     0.305 (0.044)    0.218    0.391    0.111    0.498                      0.001             0.024            0.023                      0.049       0.951
## 5   detering institutional factor   organizational outcome                      4.000  754.000  1070059.000    -0.025 (0.019)   -0.063    0.013   -0.136    0.085                      0.001             0.008            0.007                      0.074       0.926
## 6   organizational outcome          organizational capability                   5.000  349.000   205931.000     0.439 (0.065)    0.312    0.566    0.238    0.640                      0.004             0.029            0.025                      0.141       0.859
## 7   attracting institutional factor detering institutional factor               1.000  189.000    59589.000    -0.095 (0.028)   -0.151   -0.039   -0.147   -0.043                      0.001             0.002            0.002                      0.299       0.701
## 8   attracting institutional factor attracting institutional factor             1.000  184.000    58013.000     0.169 (0.093)   -0.014    0.351   -0.165    0.502                      0.001             0.068            0.068                      0.008       0.992
## 9   strategic process               strategic process                           1.000  165.000  1514613.000     0.032 (0.009)    0.014    0.051    0.013    0.052                      0.000             0.001            0.000                      0.563       0.437
## 10  organizational capability       organizational resource                     2.000  120.000    73507.000     0.097 (0.042)    0.016    0.179   -0.053    0.248                      0.002             0.015            0.014                      0.103       0.897
## 11  attracting institutional factor organizational outcome                      1.000   59.000   229268.000     0.340 (0.052)    0.239    0.441    0.215    0.465                      0.006             0.016            0.010                      0.394       0.606
## 12  attracting institutional factor strategic process                           1.000   50.000    13908.000     0.294 (0.075)    0.148    0.440    0.134    0.454                      0.004             0.019            0.016                      0.198       0.802
## 13  organizational capability       strategic process                           1.000   50.000    11500.000     0.575 (0.044)    0.489    0.661    0.424    0.726                      0.002             0.016            0.014                      0.146       0.854
## 14  organizational resource         organizational resource                     1.000   38.000    12907.000     0.205 (0.045)    0.116    0.294    0.123    0.288                      0.004             0.008            0.004                      0.483       0.517
## 15  strategic leadership            strategic process                           2.000   33.000    21783.000     0.227 (0.175)   -0.115    0.570   -0.086    0.541                      0.001             0.061            0.060                      0.017       0.983
## 16  organizational resource         others                                      1.000   26.000    14065.000     0.195 (0.050)    0.096    0.294    0.195    0.195                      0.005             0.005            0.000                      1.000       0.000
## 17  detering institutional factor   organizational resource                     1.000   11.000     3862.000    -0.252 (0.057)   -0.365   -0.139   -0.252   -0.252                      0.007             0.007            0.000                      1.000       0.000
## ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────