Я пытаюсь размножить 10X7-фрейм данных Pandas с помощью 1X7-кадра данных в Python.Python Pandas - n X m DataFrame, умноженное на 1 X m Dataframe
Вот что у меня есть:
df = pd.DataFrame(np.random.rand(10,7),columns=list('ABCDEFG'))
df_1 = pd.DataFrame(np.random.rand(1,7),columns=list('ABCDEFG'))
Я попытался это:
df_prod = pd.DataFrame(columns=df)
for i in range(0, df.shape[0]):
df_prod.iloc[i,:] = df[i,:].tolist()*df_1.iloc[0,:].tolist()
Но я получаю сообщение об ошибке:
Traceback (most recent call last):
File "C:\Python27\test.py", line 29, in <module>
df_elem.iloc[i,:] = df_val[i,:].tolist()*df_cf.iloc[0,:].tolist()
File "C:\python27\lib\site-packages\pandas\core\frame.py", line 1678, in __getitem__
return self._getitem_column(key)
File "C:\python27\lib\site-packages\pandas\core\frame.py", line 1685, in _getitem_column
return self._get_item_cache(key)
File "C:\python27\lib\site-packages\pandas\core\generic.py", line 1050, in _get_item_cache
res = cache.get(item)
TypeError: unhashable type
Мне нужно умножить все строки df
by df_1
.
мне нужно:
df.iloc[0,:] * df_1
df.iloc[1,:] * df_1
df.iloc[2,:] * df_1
df.iloc[3,:] * df_1
.
.
.
.
df.iloc[9,:] * df_1
Есть простой способ добиться этого умножения это в Python?
спасибо. Я искал что-то подобное в документации Pandas, но я не мог найти его. Отличный ответ! –