1
私は次のコードを使用してカテゴリ変数と連続変数を変換しようとしている:TypeError例外:サポートされていないオペランドのタイプ(複数可)&対象:「フロート」と「numpy.float64」
def score_to_categorical(x):
if x<0.25:
return 'very bad'
if x>=0.25 & x<0.5:
return 'bad'
if x>=0.5 & x<0.75:
return 'good'
else:
return 'very good'
ConceptTemp['Score'] = ConceptTemp['Score'].apply(score_to_categorical)
ConceptTemp1['Score'] = ConceptTemp1['Score'].apply(score_to_categorical)
を私次のエラーを取得する:
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-72-7ec42b055d4f> in <module>()
----> 1 ConceptTemp['Score'] = ConceptTemp['Score'].apply(score_to_categorical)
2 ConceptTemp1['Score'] = ConceptTemp1['Score'].apply(score_to_categorical)
E:\Anaconda2\lib\site-packages\pandas\core\series.pyc in apply(self, func, convert_dtype, args, **kwds)
2167 values = lib.map_infer(values, lib.Timestamp)
2168
-> 2169 mapped = lib.map_infer(values, f, convert=convert_dtype)
2170 if len(mapped) and isinstance(mapped[0], Series):
2171 from pandas.core.frame import DataFrame
pandas\src\inference.pyx in pandas.lib.map_infer (pandas\lib.c:62578)()
<ipython-input-11-1c4f9c7bfafe> in score_to_categorical(x)
10 if x<0.25:
11 return 'very bad'
---> 12 if x>=0.25 & x<0.5:
13 return 'bad'
14 if x>=0.5 & x<0.75:
TypeError: unsupported operand type(s) for &: 'float' and 'numpy.float64'
そのfloat
とnumpy.float64
は互換性があるだろうが、それはケースのようには思えませんが、私がいただろう。
この点に関するお手伝いをさせていただきます。
TIA。ここ
はい、それはそれを解決しました、ありがとうございます。 – Patthebug