Я работаю над небольшим количеством кода, который позволил бы мне заполнить фрейм данных заданными c строками или значениями в зависимости от значения индекса и хранить все в dict
. В качестве теста я хотел заполнить фрейм данных df
на 'foo'
, если индекс был меньше или равен 3 или больше или равен 7 .
Я думал, что сценарий, который я написал ниже, будет работать, но он не работает, и я боюсь, что у меня заканчиваются идеи относительно того, почему.
letter_list = ['a', 'b', 'c']
mydict = dict()
for letter in letter_list:
df = pd.DataFrame()
df = df.reindex(range(10))
for i in df.index.astype(float):
if i <= 3 or i >= 7:
df['toto'] = 'foo'
else:
df['toto'] = 'booo'
mydict[letter] = dict()
mydict[letter]['toto'] = df.toto
Результат этого дает мне:
{'A1': {'toto': 0 foo
1 foo
2 foo
3 foo
4 foo
5 foo
6 foo
7 foo
8 foo
9 foo
Name: toto, dtype: object}}
Вместо:
{'a': {'toto': 0 foo
1 foo
2 foo
3 foo
4 booo
5 booo
6 booo
7 foo
8 foo
9 foo
Name: toto, dtype: object}}
Я думал о замене if i <= 3 or i >= 7:
на if 3 <= i <= 7:
, но все равно получаю тот же результат. Любая помощь будет принята с благодарностью.