Anmerkung: Ich habe zu R super (nur Übergang von Stata)!Versuch, "plm" -Objekte in R zu durchlaufen und Koeffizienten zu ersetzen (atomarer Vektor, nicht-Sprache)
Hallo Leute! Ich habe eine große Anzahl von "plm" -Objekten nummeriert als plm_f_1_1, plm_f_1_2, ..., plm_f_1_17, plm_f_2_1, ... und so weiter, und ich habe Datenrahmen von Koeffizienten gespeichert, sagen wir in "female_q [1,]" . Ich versuche, durch die „plm“ Objekte Schleife und versuchen, diesen Vorgang zu tun:
for (i in 1:26) {
plm_f_1_1$coefficients[i]=female_q[1,i]
}
Also das für ein plm Objekt funktioniert, wenn ich in einer Schleife über die letzte Nummer im Objektnamen versuchen, erhalte ich dieser Fehler (nur ein Punkt in der female_q Datenrahmen zeigt), wenn ich versuchen erhalten:
get(paste0("plm_f_1_",i))$coefficients[1]=female_q[1,1]
Error in get(paste0("plm_f_1_", i))$coefficients[1] = female_q[1,1] :
target of assignment expands to non-language object
und dieses mit zuweisen:
assign(paste0("plm_f_1_",i)$coefficients[1],1)
Error in paste0("plm_f_1_", i)$coefficients :
$ operator is invalid for atomic vectors
Hier sind einige Beschreibungen, wie die Strukturen wie folgt aussehen:
str(get(paste0("plm_f_1_",i))$coefficients)
Named num [1:26] 0.1362 -0.1835 -0.3464 0.2858 -0.0634 ...
- attr(*, "names")= chr [1:26] "(Intercept)" "dem_log_gdppc_5" "dem_log_mat_educ_5" "dem_log_pop_15_share_5" ...
get(paste0("plm_f_1_",i))$coefficients[1]
(Intercept)
0.1361659
female_q[1,1]
[1] 0.1314744
Ich frage mich, ob ich die Art und Weise ändern müssen female_q genannt wird, oder etwas in diese Richtung? Würde mich über jede Hilfe freuen! Vielen Dank!!!