Ho un file csv da 10 GB in cluster hadoop con colonne duplicate. Ho cercare di analizzare in SparkR in modo da uso spark-csv
pacchetto per analizzare come DataFrame
:Colonne duplicate in Spark Dataframe
df <- read.df(
sqlContext,
FILE_PATH,
source = "com.databricks.spark.csv",
header = "true",
mode = "DROPMALFORMED"
)
Ma poiché df avere duplicati Email
colonne, se voglio selezionare questa colonna, sarebbe errore fuori:
select(df, 'Email')
15/11/19 15:41:58 ERROR RBackendHandler: select on 1422 failed
Error in invokeJava(isStatic = FALSE, objId$id, methodName, ...) :
org.apache.spark.sql.AnalysisException: Reference 'Email' is ambiguous, could be: Email#350, Email#361.;
at org.apache.spark.sql.catalyst.plans.logical.LogicalPlan.resolve(LogicalPlan.scala:278)
...
Voglio mantenere la prima occorrenza della colonna Email
ed eliminare quest'ultima, come posso fare?
ho provato entrambi, ma tutti portano allo stesso "di riferimento 'e-mail' è ambiguo" l'errore che ho citato nella domanda. – Bamqf