2017-01-20 1 views
0

Ich habe einen großen Datensatz als eine RDD. Ich möchte etwa 100 spaltenweise Teilmengen dieser RDD erstellen, so dass ich eine Map-Transformation für jede Teilmenge separat in einer Schleife ausführen kann.Wie erstellt man Teilmengen einer RDD mit spaltenweiser Aufteilung in Pyspark?

Mein RDD sieht zum Beispiel wie folgt aus:

(1,2,3,...,1000) 
(1,2,3,...,1000) 
(1,2,3,...,1000) 

ich eine Spalte weise geteilt werden soll, zum Beispiel 10 spaltet, so eine Teilmenge sollte wie folgt aussehen:

(1,2,3,...,100) 
(1,2,3,...,100) 
(1,2,3,...,100) 

Wie kann ich tun das in Pyspark?

Antwort

0

Sie können Bereich und Schleife verwenden:

for i in range(0, 1000, 100): 
    rdd.map(lambda row: row[i:i + 100]).someOtherOperation(...) 
+0

Vielen Dank für Ihre Antwort, aber ist es eine Möglichkeit, dass mit spärlicher Datenmenge zu tun (LIBSVM)? Ich erhalte einen Fehler, wenn ich das tue, oder gibt es eine Möglichkeit, zu dicht zu konvertieren, damit ich die Schleife verwenden kann. – Jacko1412

Verwandte Themen