Ładuję plik txt zawierający mieszankę danych typu float i string. Chcę przechowywać je w tablicy, w której mam dostęp do każdego elementu. Teraz po prostu robię
import pandas as pd
data = pd.read_csv('output_list.txt', header = None)
print data
Jest to struktura pliku wejściowego: 1 0 2000.0 70.2836942112 1347.28369421 /file_address.txt
.
Teraz dane są importowane jako unikalna kolumna. Jak mogę to podzielić, żeby osobno przechowywać różne elementy (abym mógł wywołać data[i,j]
)? Jak mogę zdefiniować nagłówek?
Chciałbym dodać do powyższych odpowiedzi, które możesz bezpośrednio użyć
fwf oznacza linie sformatowane o stałej szerokości.
źródło
Rozwiązanie @ Pietrovismara jest poprawne, ale chciałbym tylko dodać: zamiast mieć osobną linię do dodawania nazw kolumn, można to zrobić z pd.read_csv.
źródło
możesz tego użyć
źródło
Jeśli nie masz przypisanego indeksu do danych i nie masz pewności, jakie są odstępy, możesz użyć, aby pozwolić pandom przypisać indeks i szukać wielu spacji.
źródło
delim_whitespace=True
zamiast'\s+'
separatoraMożesz robić jako:
(np. df = pd.read_csv ('F: \ Desktop \ ds \ text.txt', delimiter = "\ t")
źródło
W oparciu o najnowsze zmiany w pandach możesz użyć read_csv, read_table jest przestarzałe:
źródło
Możesz zaimportować plik tekstowy za pomocą polecenia read_table w następujący sposób:
Wstępne przetwarzanie będzie musiało zostać wykonane po załadowaniu
źródło
Ja zwykle spojrzeć na pierwsze dane lub po prostu spróbować go importować i zrobić data.head (), jeśli widzisz, że kolumny są oddzielone \ t to należy określić
sep="\t"
inaczejsep = " "
.źródło