python - 从 Azure Databricks 集群中提取时,Pandas 将功能识别为对象 dtype
问题描述
我正在从 azure databricks 集群中读取数据框并将其转换为 pandas 数据框。Pandas 将数据类型声明为所有功能的对象,而不是 int64。
唯一的解决方案是使用 astype 并单独隐藏每一列,但我有 122 列......
pd_train = df_train.toPandas()
pd_test = df_test.toPandas()
pd_train.dtypes
pd_train 显示训练集的 pandas 数据帧 pd_test 显示测试集的 pandas 数据帧 它们都是 spark 数据帧
解决方案
这是一种方法。
首先你可以得到所有的列名,
#Get column names
columns = pd_train.columns
接下来,您可以使用 pd.to_numeric 和列名将所有列转换为 int64
#Convert to numeric
pd_train[columns] = pd_train[columns].apply(pd.to_numeric, errors='coerce')
然后,您可以对 pd_test 数据框重复此过程。
推荐阅读
- javascript - Firebase onMessage 未触发
- python - 初始化在父类中使用的子类中的属性
- html - 如何使高度不等的列之间具有相同的边距
- c# - 在将 word 转换为 pdf 时在服务器中出现此错误,在本地运行良好,但在 iis 8.5 上上传后出现此错误
- react-native - React native / API Flatlist 新添加的自动加载数据,无需重新加载
- python-3.x - 如何使用 openpyxl 在 ChartSheet 中创建/添加多个图表?
- java - 使用同步方法禁用事件侦听器
- excel - Powershell excel添加公式 - “公式包含无法识别的文本。”
- oracle - 如何在 PL/SQL 的 LIKE 子句中使用变量
- jquery - CSS / jQuery - 使用 css 和 jQuery 换行