2017-08-28 3 views
0

Ich brauche Hilfe mit meiner Textdatei Daten lesenSo erhalten Sie die erforderlichen Spalten Daten aus einer Textdatei?

Meine Textdatei Daten sind wie:

Name start_date end_date  dept_id 
Rahul 1/28/2017 08/30/2017  1234 
Ganesh 1/1/2016  08/28/2017  5678 

Ich brauche diese Textdatei zu lesen und die Bedienung tun (start_date - end_date). Ich kann nicht die erforderlichen Spalten Daten direkt in Python nehmen. Ich bin neu in Python, kann mir jemand helfen, wie mit allgemeinen Python-Code und Pandas-Code für meine Ausgabe zu tun. Danke euch allen.

+0

war die unten Antwort hilfreich? Wenn ja, bitte akzeptieren Sie die Antwort –

Antwort

3

So die start_date aus der Textdatei zu übernehmen Sie den Code unten folgen:

crs = open("C:\\Users\\xyz\\Documents\\sf.txt", "r") 
    next(crs) 
    for columns in (raw.strip().split() for raw in crs): 
     print(columns[1]) 
     print(columns[2]) 

dies wird Ihnen die start_date bekommen und end_date

+0

Import CSV auf Ihrer ersten Zeile ist soemthing Sie sollten nicht vergessen zu tun –

+0

Ich habe versucht, Zeile [1] und Zeile [2] zu drucken. Es zeigt mir Fehler der Liste Index außerhalb des Bereichs – Rahul

+0

können Sie Post atleast 5 Zeilen Ihrer Textdatei bitte –

0

Dies kann mit der Nutzung der grundlegenden Python-Code erfolgen:

from datetime import datetime 

with open("Data.txt") as f: 

    for line in f: 

     if("Name" not in line): # Skip Header 

      data = line.strip().split() 

      start_date = datetime.strptime(data[1], '%m/%d/%Y') 
      end_date = datetime.strptime(data[2], '%m/%d/%Y') 

      print(end_date-start_date) 

Dies erzeugt Ergebnis:

214 days, 0:00:00 
605 days, 0:00:00 

Hoffe es hilft!

+1

danke es hat perfekt funktioniert – Rahul

+0

ich habe versucht, es als richtig zu markieren, aber es zeigt mir als Dank für die Rückmeldung! Stimmen, die von Personen mit weniger als 15 Reputation abgegeben wurden, werden aufgezeichnet, aber ändern Sie nicht die öffentlich angezeigte Postnote – Rahul

1

So wollte man auch Pandas verwenden, also in Ihrem Fall, dass Sie Ihre Datei Daten mit Pandas, indem Sie die unten stehenden Codes lesen kann:

import pandas as pd 
    data = pd.read_csv('C:\\Users\\xyz\\Documents\\sf.txt', sep="\t", header=0) 
    print(data) 
+0

danke für den Code. Ich habe versucht, das zu akzeptieren, aber es zeigt mir Danke für die Rückmeldung! Stimmen von denen mit weniger als 15 Ruf werden aufgezeichnet, aber nicht die öffentlich angezeigte Post Punktzahl ändern – Rahul

+0

Ja, das ist richtig und wahrscheinlich dauert es 10 Minuten, nachdem ich es zu akzeptieren, so dass Sie nach 10 Minuten versuchen können, auf grünes Symbol zu klicken akzeptieren –

Verwandte Themen