Ładuję niektóre dane uczenia maszynowego z pliku CSV. Pierwsze 2 kolumny to obserwacje, a pozostałe kolumny to cechy.
Obecnie wykonuję następujące czynności:
data = pandas.read_csv('mydata.csv')
co daje coś takiego:
data = pandas.DataFrame(np.random.rand(10,5), columns = list('abcde'))
Chciałbym ten dataframe pokroić w dwóch dataframes: jedna zawiera kolumny ai bjeden zawierający kolumny c, di e.
Nie można napisać czegoś takiego
observations = data[:'c']
features = data['c':]
Nie jestem pewien, jaka jest najlepsza metoda. Czy potrzebuję pd.Panel?
Nawiasem mówiąc, uważam, że indeksowanie ramek danych jest dość niespójne: data['a']jest dozwolone, ale data[0]nie jest. Z drugiej strony data['a':]nie jest dozwolone, ale data[0:]jest. Czy jest tego praktyczny powód? Jest to naprawdę mylące, jeśli kolumny są indeksowane przez Int, biorąc pod uwagę todata[0] != data[0:1]
df[5:10]dodano pewne udogodnienia, np. Dodano do wybierania wierszy ( pandas.pydata.org/pandas-docs/stable/… )