2017-01-27 2 views
6

Ich habe eine große pyspark.sql.dataframe.DataFrame und ich möchte alle Zeilen, in denen die URL gespeichert in der location Spalte enthält eine vordefinierte Zeichenfolge, z. B. filter halten. "google.de"Filter df, wenn Werte Teil einer Zeichenfolge in pyspark entspricht

Ich habe df.filter(sf.col('location').contains('google.com') versucht, aber dies wirft ein

TypeError: _TypeError: 'Column' object is not callable' 

Wie gehe ich um und Filter richtig meine df? Vielen Dank im Voraus!

+1

Versuchen 'df.filter ("location like '% google.com%'") ' – mrsrinivas

Antwort

12

können Sie verwenden Ebene SQL in filter

df.filter("location like '%google.com%'") 

oder mit Datenrahmen Säulenverfahren

df.filter(df.location.like('%google.com%')) 
+1

Super, das funktioniert in der Tat, danke! Kannst du vielleicht erklären, warum die Methode, die ich vorher ausprobiert habe, nicht funktioniert? – gaatjeniksaan

+1

Ich sehe keine Methode 'contains()' [für pySpark] (http://spark.apache.org/docs/2.1.0/api/python/pypark.sql.html). Aber contains sollte funktionieren. – mrsrinivas

Verwandte Themen