Python 熊猫:为什么泰坦尼克号数据库电子表格中缺少的列会将数据类型作为对象获取?
我从kaggle那里得到了泰坦尼克号的数据,上传到谷歌电子表格,然后从colab那里读取。并发现Age Dtype获取对象是因为缺少值(或其他原因)。如何将年龄数据类型更改为浮动64Python 熊猫:为什么泰坦尼克号数据库电子表格中缺少的列会将数据类型作为对象获取?,python,pandas,kaggle,Python,Pandas,Kaggle,我从kaggle那里得到了泰坦尼克号的数据,上传到谷歌电子表格,然后从colab那里读取。并发现Age Dtype获取对象是因为缺少值(或其他原因)。如何将年龄数据类型更改为浮动64 from google.colab import auth import pandas as pd auth.authenticate_user() import gspread from oauth2client.client import GoogleCredentials gc = gspread.aut
from google.colab import auth
import pandas as pd
auth.authenticate_user()
import gspread
from oauth2client.client import GoogleCredentials
gc = gspread.authorize(GoogleCredentials.get_application_default())
worksheet = gc.open('titanic_train').sheet1
# get_all_values gives a list of rows.
datas = worksheet.get_all_records()
print(datas)
pd.DataFrame(datas).info()
我得到了下面的信息
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 891 entries, 0 to 890
Data columns (total 12 columns):
# Column Non-Null Count Dtype
--- ------ -------------- -----
0 PassengerId 891 non-null int64
1 Survived 891 non-null int64
2 Pclass 891 non-null int64
3 Name 891 non-null object
4 Sex 891 non-null object
5 Age 891 non-null object
6 SibSp 891 non-null int64
7 Parch 891 non-null int64
8 Ticket 891 non-null object
9 Fare 891 non-null float64
10 Cabin 891 non-null object
11 Embarked 891 non-null object
dtypes: float64(1), int64(5), object(6)
memory usage: 83.7+ KB
范围索引:891个条目,0到890
数据列(共12列):
#列非空计数数据类型
--- ------ -------------- -----
0 PassengerId 891非空int64
1 891非空int64
2类891非空int64
3名称891非空对象
4.891非空对象
5 Age 891非空对象
6 SibSp 891非空int64
7 Parch 891非空int64
8票证891非空对象
9票价891非零浮动64
10.891非空对象
11.891非空对象
数据类型:float64(1)、int64(5)、object(6)
内存使用率:83.7+KB
您需要将Age
列转换为整数数据类型。这可以通过以下方式完成:
df = pd.DataFrame(datas)
df['Age'] = pd.to_numeric(df['Age'])
这回答了你的问题吗?很高兴它起作用了。请投票并接受答案,以便将来帮助他人:)