2016-08-10 1 views
1
nicht analysieren

Ich kann Datum in Schwein nicht analysieren.
Datumsformat ist Mo, 10.11.10 01.02Kann das Datum in Schwein

I-Daten laden Sie den folgenden Befehl:

data = load 'CampaignData.csv' using PigStorage(';');

Next I erzeugen, um die Datumsspalte als chararray die Verwendung von folgenden Befehl ein: -

date_data = foreach data generate (chararray) $272 as dates; 

wenn ich date_data Dump erhalte ich die folgende in Ausg ut:

Mon

Wie Sie das vollständige Datum bekommen?

+0

$ 272 ist die Position der Datumsspalte –

+0

Was ist in $ 273? –

+0

Ich denke, ich habe die Antwort auf das obige Problem. Da die Datei durch Kommas getrennt ist, muss ich PigStorage (',') verwenden. Dann muss ich Spalten $ 272 und $ 273 zusammenführen, die mir das vollständige Datum geben würden. Danke für die Hilfe. aber jetzt habe ich ein anderes Problem. Wie konvertiere ich dieses Datum in das Datum/Uhrzeit-Format foreach fdate generieren ToDate ($ 0, 'EEE MM/TT/JJ hh: mm aaa'); wo fdate = Mo 10/11/10 01:02 PM –

Antwort

0

Sie benötigen nicht $ 272, um das angegebene Datum in das Datetime-Objekt zu konvertieren. Sie können dies einfach folgen:

date_data = foreach data generate ToDate($273, ' MM/dd/yy hh:mm aaa'); 

Nur sicher machen $ 273 ist chararray und es gibt Raum vor String-Datenformat in ToDate Funktion angegeben oben. Speicherplatz ist nur erforderlich, um sicherzustellen, dass die Formatzeichenfolge genau wie Daten aussieht, die nach dem Analysieren der Zeile mit Kommatrennzeichen vorhanden wären.

+0

Auch das gibt Fehler 1066 –

+0

Können Sie vollständige Fehlerprotokoll hier posten. –