Я пишу код для замены символов следующим патерном: [^ \ w | ] с '' . Дело в том, что при использовании DataFrame «предложениеDF» внутри моей функции «removePunctuation» я получаю следующий «столбец» объекта «error».Поведение объекта «Столбец» внутри функции искры
from pyspark.sql.functions import regexp_replace, trim, col, lower
def removePunctuation(column):
cleanString = column
cleanString = cleanString.select(regexp_replace(sentenceDF['sentence'],'[^\w | ]','').alias('sentence'))
cleanString = cleanString.select(regexp_replace(cleanString['sentence'],'_','').alias('sentence'))
cleanString = cleanString.select(lower(cleanString['sentence']))
return cleanString
sentenceDF = sqlContext.createDataFrame([('Hi, you!',),
(' No under_score!',),
(' * Remove punctuation then spaces * ',)], ['sentence'])
result = sentenceDF.select(removePunctuation(col('sentence')))
result.show()
TraceBack:
TypeError: 'Column' object is not callable
--------------------------------------------------------------------------- TypeError Traceback (most recent call last)
<ipython-input-50-aa978fac8bae> in <module>()
15 (' * Remove punctuation then spaces * ',)], ['sentence'])
16
---> 17 result = sentenceDF.select(removePunctuation(col('sentence')))
18 result.show()
<ipython-input-50-aa978fac8bae> in removePunctuation(column)
4 def removePunctuation(column):
5 cleanString = column
----> 6 cleanString = cleanString.select(regexp_replace(sentenceDF['sentence'],'[^\w | ]','').alias('sentence'))
7 cleanString = cleanString.select(regexp_replace(cleanString['sentence'],'_','').alias('sentence'))
8 cleanString = cleanString.select(lower(cleanString['sentence'])) TypeError: 'Column' object is not callable
Command took 0.09 seconds -- by [email protected] at 10/30/2016, 2:48:17 PM on My Cluster (6 GB)
Я думаю, что вы просто хотите РД и картографические работы, а не dataframe или выбрать заявления –
Держу пари, это может быть сделано таким образом. Дело в том, что я не понимаю поведение моего dataFrame, когда передаю 'col (' предложение ')' моей функции. Если бы вы могли объяснить мне, почему я получаю объект «column» не вызываемый »и помогите мне исправить это, я был бы признателен. –
Предоставление трассировки поможет –