Spark Dataframe更改列值

时间:2017-01-18 10:06:21

标签: scala apache-spark dataframe

我得到了一些包含170列的数据框。在一列中,我有一个“名称”字符串,当我将它们写入Postgres时,这个字符串有时会有一些特殊符号,如“'”,这些符号是不合适的。 我能做出类似的事情吗?

Df[$'name']=Df[$'name'].map(x => x.replaceAll("'","")) ?

我不想解析完整的DataFrame,因为它非常庞大。请帮助我

3 个答案:

答案 0 :(得分:9)

您不能改变DataFrame,只能将它们转换为具有更新值的新DataFrame。在这种情况下 - 您可以使用<Validation group="myGroup1" validators={[ { validator: (val) => !validator.isEmpty(val), errorMessage: "Cannot be left empty" }, ... }]}> <TextField value={this.state.value} className={styles.inputStyles} style={{width: "100%"}} onChange={ (evt)=>{ console.log("you have typed: ", evt.target.value); } }/> 函数在regex_replace列上执行映射:

name

答案 1 :(得分:1)

你可以这样做

{{1}}

答案 2 :(得分:0)

导入org.apache.spark.sql.functions ._

df.withColumn(“ name”,lit(translate(translation(col(“ cpf”),“。”,“”),“-”,“”))))