如何使用Pandas在Python中将不同的列合并到一个表中

罗宾·斯文森

我已经为Cloud(csv文件)收集了一些传感器值,并注意到了一个问题,我认为可以通过将不同的列组合到一个表中来解决这个问题。我有下表:

Sensor1x, Sensor1y, Sensor1z, Sensor2x, Sensor2y, Sensor2z

12.1,       0.1,       0.2,        2.2,       3.3,       2.2

NaN,       NaN,        NaN,        NaN,        NaN,      4.5,

etc.

当我尝试从Sensor1列中删除NaN值时,由于某种原因,Sensor 2列中的所有值都设置为0,而所有NaN值都从Sensor1列中删除了(因此至少NaN部分适用于特定列)。另一个奇怪的事情是,我仅选择从一个列(例如,Sensor1x)中删除NaN值,但是在所有x,y和z列中都将其删除。

因此,由于这导致前3列被填充,而后3列为空,因此我认为可以将删除的Nan列保存在1个变量中,并对Sensor2列进行相同操作,这将提供以下两个变量:

第一个变量:

Sensor1x, Sensor1y, Sensor1z, Sensor2x, Sensor2y, Sensor2z

12.1,       0.1,       0.2,        0,       0,       0,

etc.

第二个变量:

Sensor1x, Sensor1y, Sensor1z, Sensor2x, Sensor2y, Sensor2z

0,          0,         0,          2.2,       3.3,       2.2,

etc.

我将如何结合这两个变量,以获得完整的表格?

我目前在Jupyter Notebook中使用的简单代码:

SDO = pd.read_csv('SensorOutputData202021.csv')
SDO = SDO[SDO['Ax'].notna()]
SDO

我用来打印数据框并删除na值的三行简单代码。以及出于某些原因使我其余三列中的值无效的代码行。

我当前的传感器表的图像:

在此处输入图片说明

当我在Ax上使用notna函数时,会发生以下情况:

在此处输入图片说明

罗马·茹拉夫列夫

目前,您正在使用notna()返回列掩码('Ax')的方法:在值处为True,在NaNs中为False。因此,您致电:

SDO = SDO[SDO['Ax'].notna()]

您将删除其中的每一行Ax is None

您不能从表中“只是删除”无,因为您应该保持其结构。

我建议您除了寻找以下方法notna()

  • replace() -用另一个值替换目标值;
  • dropna() -删除缺少值的行或列;
  • fillna() -使用特定逻辑填充缺失值;

您也可以阅读padnas文档的这一部分

因此,根据您将要处理的数据,您应该或完全删除具有NaN数据的行,或者以可以在代码中以有意义的方式处理的内容替换这些NaN。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Python:提取不同的表并将它们合并到一个CSV文件中

将不同长度的向量一个接一个地合并到一个矩阵中

如何在python中将不同的excel文件合并到一个具有不同工作表名称的工作簿中

将不同列表中的选定项目合并到一个新列表中

如何在熊猫中将多列合并到一个变量(列表)中

如何在Python中将不同的时序图合并到2D中

将不同的行数据合并到sql中的一个单元格中

如何将两个选定的列合并到一个表中?

在python中将不同工作表中的列合并为单个工作表

Python Pandas将多列合并到一个字典列中

在我的程序中将两个不同的Select合并到同一结果表中?

JQ:将不同的对象合并到一个新的数组中

如何将两个不同的查询合并到一个表中?

如何使用SUM()并使用SQL将表合并到一个表中?

如何使用SUM()并使用SQL将表合并到一个表中

VBA:将不同工作簿中的某些工作表合并到一个工作簿中

Oracle SQL:是否可以将不同表中的列合并到一个表中?

将不同列中的值合并为python列表中的一个

如何将不同目录的内容合并到一个目录中

如何从多个表中获取一列以合并到一个列表中?

将多个值合并到一个新列中的一行 Pandas Python

如何将两个sql表中的行和列合并到一个表中

将不同的数组合并到另一个数组中

将不同表中的多列合并为一个

如何在 Python 中将不同类中的对象访问到一个类中?

如何将不同的excel数据表合并到一个表但不同的列中?

如何通过pandas将多个工作表中的列合并到一个excel文件中

如何有效地将 kdb/q 中具有不同列的表列表合并到一个表中

使用 python 将多列中的值合并到每行中的一个列表中