Я создал фрейм данных, импортируя несколько текстовых файлов и объединяя их в один фрейм данных, используя следующий код:
list=[]
for filename in allfiles:
df = pd.read_csv(filename, index_col=None, header=0,delim_whitespace=True, skipfooter = 1,engine='python')
list.append(df)
dat = pd.concat(list, axis=0, keys=range(0,len(allfiles))
Теперь я хочу создать n массивов, взяв n элемент второго столбца каждого df, содержащегося в большем кадре данных, создавая более или менее транспонирование второго столбца, который содержит в строке n все элементы n находится во втором столбце всех различных файлов данных.
Я попытался нарезать данные dataframe с помощью .loc () и .iloc () следующим образом:
dat.iloc[:,2,n]
, но он говоритчто индексов недостаточно.
Вот краткий пример для dat:
| | | a | b | c |
|---|---|-----|-----|-----|
| 0 | 0 | 0.1 | 5.3 | 7.2 |
| | 1 | 3.2 | 2.5 | 5.4 |
| | 2 | 0.3 | 0.5 | 6.2 |
| 1 | 0 | 6.7 | 4.5 | 7.2 |
| | 1 | 9.4 | 6.3 | 5.7 |
| | 2 | 6.4 | 4.5 | 6.7 |
| 2 | 0 | 3.4 | 5.6 | 0.5 |
| | 1 | 1.9 | 0.3 | 1.2 |
| | 2 | 0.4 | 0.7 | 2.6 |
В конце я хотел бы получить массивы вида:
l_1 = [5.3, 4.5,5.6], l_2 = [2.5,6.3,0.3], L_3 = [0.5,4.5,0.7] * * 1 023