なぜ、Pandasは私にオブジェクトがあると伝えますが、明示的に変換しても、選択した列のすべての項目は文字列です。DataFrameの文字列はオブジェクトですが、dtypeはオブジェクト
これは私のデータフレームである:それらの
<class 'pandas.core.frame.DataFrame'>
Int64Index: 56992 entries, 0 to 56991
Data columns (total 7 columns):
id 56992 non-null values
attr1 56992 non-null values
attr2 56992 non-null values
attr3 56992 non-null values
attr4 56992 non-null values
attr5 56992 non-null values
attr6 56992 non-null values
dtypes: int64(2), object(5)
ファイブdtype object
です。私は明示的に文字列にそれらのオブジェクトを変換する:type(df["attr2"].ix[0]
が正しいれ、str
を明らかにしたが
for c in df.columns:
if df[c].dtype == object:
print "convert ", df[c].name, " to string"
df[c] = df[c].astype(str)
その後、df["attr2"]
はまだ、dtype object
を持っています。
パンダはint64
とfloat64
とobject
を区別します。 dtype str
がないときの背後にある論理は何ですか? object
でカバーされているstr
はなぜですか?
だから私は、あなたが、あると言っているものだと思う「それについては心配しないでください。このようなことになっていますか」? –