[英]Reading .txt file columns into pandas data frame and creating new columns
[英]Pandas: Creating new data frame from only certain columns
我有一个带有测量值的 csv 文件,我想创建一个具有每小时平均值和标准偏差的新 csv 文件。 但仅适用于某些列。
例子:
csv1:
YY-MO-DD HH-MI-SS_SSS | Acceleration | Lumx | Pressure
2015-12-07 20:51:06:608 | 22.7 | 32.3 | 10
2015-12-07 20:51:07:609 | 22.5 | 47.7 | 15
至 csv 2(仅用于压力和加速度:
YY-MO-DD HH-MI-SS_SSS | Acceleration avg | Pressure avg
2015-12-07 20:00:00:000 | 22.6 | 12.5
2015-12-07 21:00:00:000 | .... | ....
现在我有一个关于如何计算平均值的想法(感谢这个网站上的人) - 但我在创建一个包含几列计算的新的更小的 dataframe 时遇到了麻烦。
谢谢 !!!
你应该像下面那样制作更小的df,
csv2 = csv1[['Acceleration', 'Pressure']].copy()
并且可以处理csv2。 (你说你有关于平均计算的想法.copy()
如果你确定视图和副本,可以省略FYI, .copy()
。
csv2 = csv1.loc[:, ['Acceleration', 'Pressure']]
.loc[]
有助于使子集化操作保持显式和一致。
.loc[]
始终返回一个副本,因此永远不会修改原始数据帧。
(有关不同view vs. copy
替代方案的进一步讨论和很好的示例,请参阅: Pandas:了解操作何时影响原始数据帧 )
您的平均方法可以 go 代替“method_to_obtain_avg” ,然后您可以获得如下子集:
csv2 = csv1.method_to_obtain_avg()[["Accelaration", "Pressure"]]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.