Создайте новый фрейм данных.
df = pd.DataFrame([[1, 2], [4, 6], [7, 8]],
index=['cobra', 'viper', 'sidewinder'],
columns=['max_speed', 'shield']) df
Показать его значение:
df
max_speed shield
cobra 1 2
viper 4 6
sidewinder 7 8
Теперь я хочу назначить всю первую строку как 10
.
df.iloc[0:1,] = 10
df
max_speed shield
cobra 10 10
viper 4 6
sidewinder 7 8
Назначить всю первую строку как None
.
df.iloc[0:1,] = None
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python3.5/dist-packages/pandas/core/indexing.py", line 190, in __setitem__
self._setitem_with_indexer(indexer, value)
File "/usr/local/lib/python3.5/dist-packages/pandas/core/indexing.py", line 471, in _setitem_with_indexer
info_idx = indexer[info_axis]
IndexError: tuple index out of range
Почему нельзя назначить всю строку как None только одним выражением?
df.iloc[0,0] = None
df.iloc[0,1] = None
Два оператора могут назначить строку как None
, почему нельзя написать только одно выражение, например df.iloc[0:1,] = 10
?