Я создаю кадр данных 4x4 с пандами и пытаюсь напечатать последние 2 столбца со всеми данными строки, используя print(df.iloc[:][2:])
, однако он печатает последние две строки и все столбцы - так же, как print(df.iloc[2:][:])
. Я неправильно понимаю, как консоль интерпретирует скобки и двоеточия?
Вот код, который я выполняю:
import pandas as pd
import numpy as np
data1 = np.array([[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12],
[13, 14, 15, 16]])
index = ['Worst', 'Index', 'Ever', 'Dude']
columns = ['Best', 'Columns', 'Today', 'Bro']
sick_df = pd.DataFrame(data = data1, index = index, columns = columns)
print(sick_df)
print('\n', sick_df.iloc[:][2:])
Вот вывод из вышеуказанного кода:
Best Columns Today Bro
Worst 1 2 3 4
Index 5 6 7 8
Ever 9 10 11 12
Dude 13 14 15 16
Best Columns Today Bro
Ever 9 10 11 12
Dude 13 14 15 16
Я ожидал, что второй метод печати отобразит все четыре строки с двумя последними столбцами. Этот вывод - то, что я ожидаю получить от print('\n', sick_df.iloc[2:][:])
, и действительно, когда я изменяю 2-й метод печати на эту строку, я получаю точно такой же вывод.