Ich versuche, alle diese grauen Namen in einem Datenrahmen, den ich von einer Regierungsbehörde erhalten habe, umzubenennen.Ersetzen Sie alle nicht-alphanumerischen durch einen Punkt
> colnames(thedata)
[1] "Region" "Resource Assessment Site ID"
[3] "Site Name/Facility" "Design Head (feet)"
[5] "Design Flow (cfs)" "Installed Capacity (kW)"
[7] "Annual Production (MWh)" "Plant Factor"
[9] "Total Construction Cost (1,000 $)" "Annual O&M Cost (1,000 $)"
[11] "Cost per Installed Capacity ($/kW)" "Benefit Cost Ratio with Green Incentives"
[13] "IRR with Green Incentives" "Benefit Cost Ratio without Green Incentives"
[15] "IRR without Green Incentives"
die Spaltenüberschriften haben spezielle nicht-alphanumerische Zeichen und Leerzeichen, so ihnen bezieht, ist unmöglich, so dass ich sie umbenennen. Ich möchte alle nicht-alphanumerischen Zeichen durch einen Punkt ersetzen. Aber ich habe versucht:
old.col.names <- colnames(thedata)
new.col.names <- gsub("^a-z0-9", ".", old.col.names)
Die^ist eine „nicht“ Abgrenzung, so dachte ich, es würde alles ersetzen, die nicht alphanumerische mit einer Periode in der old.col.names ist.
Kann jemand helfen?
Sie müssen '[^ [: alnum:] ] + ' – akrun
können Sie' make.names (Spaltennamen (thedata), allow_ = FALSE) versuchen ' – Jimbou
versuchen Sie dieses' pattern = "[^ a-zA-Z0-9]" '. Es ist wichtig, dem Regex zu zeigen, dass eine Kombination aus dem, was zwischen '' 'und' '' steht. Das '^' muss neben diesem Muster auch haben. Viel Glück! –