Traceback (most recent call last):
File "D:\PyCharm projects\pandastutorial\venv\Lib\site-packages\pandas\core\groupby\groupby.py", line 1942, in _agg_py_fallback
res_values = self._grouper.agg_series(ser, alt, preserve_dtype=True)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\PyCharm projects\pandastutorial\venv\Lib\site-packages\pandas\core\groupby\ops.py", line 864, in agg_series
result = self._aggregate_series_pure_python(obj, func)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\PyCharm projects\pandastutorial\venv\Lib\site-packages\pandas\core\groupby\ops.py", line 885, in _aggregate_series_pure_python
res = func(group)
^^^^^^^^^^^
File "D:\PyCharm projects\pandastutorial\venv\Lib\site-packages\pandas\core\groupby\groupby.py", line 2454, in
alt=lambda x: Series(x, copy=False).mean(numeric_only=numeric_only),
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\PyCharm projects\pandastutorial\venv\Lib\site-packages\pandas\core\series.py", line 6549, in mean
return NDFrame.mean(self, axis, skipna, numeric_only, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\PyCharm projects\pandastutorial\venv\Lib\site-packages\pandas\core\generic.py", line 12420, in mean
return self._stat_function(
^^^^^^^^^^^^^^^^^^^^
File "D:\PyCharm projects\pandastutorial\venv\Lib\site-packages\pandas\core\generic.py", line 12377, in _stat_function
return self._reduce(
^^^^^^^^^^^^^
File "D:\PyCharm projects\pandastutorial\venv\Lib\site-packages\pandas\core\series.py", line 6457, in _reduce
return op(delegate, skipna=skipna, **kwds)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\PyCharm projects\pandastutorial\venv\Lib\site-packages\pandas\core\nanops.py", line 147, in f
result = alt(values, axis=axis, skipna=skipna, **kwds)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\PyCharm projects\pandastutorial\venv\Lib\site-packages\pandas\core\nanops.py", line 404, in new_func
result = func(values, axis=axis, skipna=skipna, mask=mask, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\PyCharm projects\pandastutorial\venv\Lib\site-packages\pandas\core\nanops.py", line 720, in nanmean
the_sum = _ensure_numeric(the_sum)
^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\PyCharm projects\pandastutorial\venv\Lib\site-packages\pandas\core\nanops.py", line 1701, in _ensure_numeric
raise TypeError(f"Could not convert string '{x}' to numeric")
TypeError: Could not convert string 'CaterpieMetapodButterfreeWeedleKakunaBeedrillBeedrillMega BeedrillParasParasectVenonatVenomothScytherPinsirPinsirMega PinsirLedybaLedianSpinarakAriadosYanmaPinecoForretressScizorScizorMega ScizorShuckleHeracrossHeracrossMega HeracrossWurmpleSilcoonBeautiflyCascoonDustoxSurskitMasquerainNincadaNinjaskShedinjaVolbeatIllumiseKricketotKricketuneBurmyWormadamPlant CloakWormadamSandy CloakWormadamTrash CloakMothimCombeeVespiquenYanmegaSewaddleSwadloonLeavannyVenipedeWhirlipedeScolipedeDwebbleCrustleKarrablastEscavalierJoltikGalvantulaShelmetAccelgorDurantLarvestaVolcaronaGenesectScatterbugSpewpaVivillon' to numeric
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "D:\PyCharm projects\pandastutorial\advanced.py", line 40, in
print(df.groupby(['Type 1']).mean())
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\PyCharm projects\pandastutorial\venv\Lib\site-packages\pandas\core\groupby\groupby.py", line 2452, in mean
result = self._cython_agg_general(
^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\PyCharm projects\pandastutorial\venv\Lib\site-packages\pandas\core\groupby\groupby.py", line 1998, in _cython_agg_general
new_mgr = data.grouped_reduce(array_func)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\PyCharm projects\pandastutorial\venv\Lib\site-packages\pandas\core\internals\managers.py", line 1469, in grouped_reduce
applied = sb.apply(func)
^^^^^^^^^^^^^^
File "D:\PyCharm projects\pandastutorial\venv\Lib\site-packages\pandas\core\internals\blocks.py", line 393, in apply
result = func(self.values, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\PyCharm projects\pandastutorial\venv\Lib\site-packages\pandas\core\groupby\groupby.py", line 1995, in array_func
result = self._agg_py_fallback(how, values, ndim=data.ndim, alt=alt)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\PyCharm projects\pandastutorial\venv\Lib\site-packages\pandas\core\groupby\groupby.py", line 1946, in _agg_py_fallback
raise type(err)(msg) from err
TypeError: agg function failed [how->mean,dtype->object]
Поскольку это проблема со строковыми значениями (это сработало для парня из руководства), я попробовал это:
но мне нужно среднее значение всех числовых значений, и я не хочу указывать его индивидуально. Я знаю, что это может быть полезно, когда вы указываете среднее значение для одного столбца и, например, минимальное значение для другого, но это раздражает, а иногда и невозможно для огромных баз данных. Есть ли способ сделать это быстрее? С уважением
Сейчас я изучаю pandas и столкнулся с ошибкой. база данных, которую я использовал: https://github.com/KeithGalli/pandas/blob/master/pokemon_data.csv Я пробовал, как указано в учебнике YouTube: [code]print(df.groupby(['Type 1']).mean()) [/code] но возвращает ошибку: [code]Traceback (most recent call last): File "D:\PyCharm projects\pandastutorial\venv\Lib\site-packages\pandas\core\groupby\groupby.py", line 1942, in _agg_py_fallback res_values = self._grouper.agg_series(ser, alt, preserve_dtype=True) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\PyCharm projects\pandastutorial\venv\Lib\site-packages\pandas\core\groupby\ops.py", line 864, in agg_series result = self._aggregate_series_pure_python(obj, func) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\PyCharm projects\pandastutorial\venv\Lib\site-packages\pandas\core\groupby\ops.py", line 885, in _aggregate_series_pure_python res = func(group) ^^^^^^^^^^^ File "D:\PyCharm projects\pandastutorial\venv\Lib\site-packages\pandas\core\groupby\groupby.py", line 2454, in alt=lambda x: Series(x, copy=False).mean(numeric_only=numeric_only), ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\PyCharm projects\pandastutorial\venv\Lib\site-packages\pandas\core\series.py", line 6549, in mean return NDFrame.mean(self, axis, skipna, numeric_only, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\PyCharm projects\pandastutorial\venv\Lib\site-packages\pandas\core\generic.py", line 12420, in mean return self._stat_function( ^^^^^^^^^^^^^^^^^^^^ File "D:\PyCharm projects\pandastutorial\venv\Lib\site-packages\pandas\core\generic.py", line 12377, in _stat_function return self._reduce( ^^^^^^^^^^^^^ File "D:\PyCharm projects\pandastutorial\venv\Lib\site-packages\pandas\core\series.py", line 6457, in _reduce return op(delegate, skipna=skipna, **kwds) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\PyCharm projects\pandastutorial\venv\Lib\site-packages\pandas\core\nanops.py", line 147, in f result = alt(values, axis=axis, skipna=skipna, **kwds) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\PyCharm projects\pandastutorial\venv\Lib\site-packages\pandas\core\nanops.py", line 404, in new_func result = func(values, axis=axis, skipna=skipna, mask=mask, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\PyCharm projects\pandastutorial\venv\Lib\site-packages\pandas\core\nanops.py", line 720, in nanmean the_sum = _ensure_numeric(the_sum) ^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\PyCharm projects\pandastutorial\venv\Lib\site-packages\pandas\core\nanops.py", line 1701, in _ensure_numeric raise TypeError(f"Could not convert string '{x}' to numeric") TypeError: Could not convert string 'CaterpieMetapodButterfreeWeedleKakunaBeedrillBeedrillMega BeedrillParasParasectVenonatVenomothScytherPinsirPinsirMega PinsirLedybaLedianSpinarakAriadosYanmaPinecoForretressScizorScizorMega ScizorShuckleHeracrossHeracrossMega HeracrossWurmpleSilcoonBeautiflyCascoonDustoxSurskitMasquerainNincadaNinjaskShedinjaVolbeatIllumiseKricketotKricketuneBurmyWormadamPlant CloakWormadamSandy CloakWormadamTrash CloakMothimCombeeVespiquenYanmegaSewaddleSwadloonLeavannyVenipedeWhirlipedeScolipedeDwebbleCrustleKarrablastEscavalierJoltikGalvantulaShelmetAccelgorDurantLarvestaVolcaronaGenesectScatterbugSpewpaVivillon' to numeric
The above exception was the direct cause of the following exception:
Traceback (most recent call last): File "D:\PyCharm projects\pandastutorial\advanced.py", line 40, in print(df.groupby(['Type 1']).mean()) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\PyCharm projects\pandastutorial\venv\Lib\site-packages\pandas\core\groupby\groupby.py", line 2452, in mean result = self._cython_agg_general( ^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\PyCharm projects\pandastutorial\venv\Lib\site-packages\pandas\core\groupby\groupby.py", line 1998, in _cython_agg_general new_mgr = data.grouped_reduce(array_func) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\PyCharm projects\pandastutorial\venv\Lib\site-packages\pandas\core\internals\managers.py", line 1469, in grouped_reduce applied = sb.apply(func) ^^^^^^^^^^^^^^ File "D:\PyCharm projects\pandastutorial\venv\Lib\site-packages\pandas\core\internals\blocks.py", line 393, in apply result = func(self.values, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\PyCharm projects\pandastutorial\venv\Lib\site-packages\pandas\core\groupby\groupby.py", line 1995, in array_func result = self._agg_py_fallback(how, values, ndim=data.ndim, alt=alt) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\PyCharm projects\pandastutorial\venv\Lib\site-packages\pandas\core\groupby\groupby.py", line 1946, in _agg_py_fallback raise type(err)(msg) from err TypeError: agg function failed [how->mean,dtype->object] [/code] Поскольку это проблема со строковыми значениями (это сработало для парня из руководства), я попробовал это: [code] print(df[['HP','Attack','Defense']].groupby(['Type 1']).mean()) [/code] но он вернул еще одну ошибку: [code]Traceback (most recent call last): File "D:\PyCharm projects\pandastutorial\advanced.py", line 42, in print(df[['HP','Attack','Defense']].groupby(['Type 1']).mean()) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\PyCharm projects\pandastutorial\venv\Lib\site-packages\pandas\core\frame.py", line 9183, in groupby return DataFrameGroupBy( ^^^^^^^^^^^^^^^^^ File "D:\PyCharm projects\pandastutorial\venv\Lib\site-packages\pandas\core\groupby\groupby.py", line 1329, in __init__ grouper, exclusions, obj = get_grouper( ^^^^^^^^^^^^ File "D:\PyCharm projects\pandastutorial\venv\Lib\site-packages\pandas\core\groupby\grouper.py", line 1043, in get_grouper raise KeyError(gpr) KeyError: 'Type 1' [/code] Сработало следующее: [code] print(df.groupby(['Type 1']).agg({'Speed':'mean', 'Defense':'mean'}))
[/code] но мне нужно среднее значение всех числовых значений, и я не хочу указывать его индивидуально. Я знаю, что это может быть полезно, когда вы указываете среднее значение для одного столбца и, например, минимальное значение для другого, но это раздражает, а иногда и невозможно для огромных баз данных. Есть ли способ сделать это быстрее? С уважением
Стоящая задача — выполнить множественную линейную регрессию по нескольким столбцам в контексте группировки и вернуть соответствующие бета-коэффициенты и связанные с ними значения t в отдельных столбцах.
Ниже приведена иллюстрация попытка сделать это...
Я новичок в Python и еще новичок в Pandas, и надеюсь на некоторые рекомендации.
В моей компании есть локальная база данных Oracle DEV, к которой я пытаюсь подключиться с помощью Python. И Панды. После некоторого поиска я обнаружил, что рекомендуется...
Я новичок в Python и еще новичок в Pandas, и надеюсь на некоторые рекомендации.
В моей компании есть локальная база данных Oracle DEV, к которой я пытаюсь подключиться с помощью Python. И Панды. После некоторого поиска я обнаружил, что рекомендуется...
Я новичок в Python и еще новичок в Pandas, и надеюсь на некоторые рекомендации.
В моей компании есть локальная база данных Oracle DEV, к которой я пытаюсь подключиться с помощью Python. И Панды. После некоторого поиска я обнаружил, что рекомендуется...
Я довольно новичок в Python и даже более новее для Pandas и надеюсь на некоторое руководство
У моей компании есть база данных Dev Oracle, к которой я пытаюсь подключиться к использованию Python & Pandas. После некоторого поиска я обнаружил, что для...