[英]convert data-frame into lists of list in python
我有一个这样的数据框
timeslice host CPU outlier
0 2011-01-10 19:28:31 1 56 NaN
1 2012-02-10 18:28:31 2 78 NaN
2 2013-03-10 12:28:31 3 3 3.0
3 2014-04-10 14:28:31 4 98 NaN
4 2015-04-10 14:28:31 7 72 NaN
5 2014-06-10 14:28:31 6 7 7.0
6 2018-04-10 14:28:31 4 9 9.0
使用此df.values.tolist()
我可以将其转换为列表列表,如[['2011-01-10 19:28:31', 1, 56, nan], ['2012-02-10 18:28:31', 2, 78, nan], ['2013-03-10 12:28:31', 3, 3, 3.0], ['2014-04-10 14:28:31', 4, 98, nan]]...
我把条件放在那里,但没有成功。
但是当异常值不是NaN
并且我想生成这样的输出时,我只想获取这些值.. [ ['2013-03-10 12:28:31', 3, 3, 3.0],[2014-06-10 14:28:31,6,7,7.0],[2018-04-10 14:28:31 ,4 ,9 ,9.0]]
提前致谢
首先使用dropna
与指定的列outlier
检查NaN
s:
L = df.dropna(subset=['outlier']).values.tolist()
print (L)
[['12:28:31', 3, 3, 3.0], ['14:28:31', 6, 7, 7.0], ['14:28:31', 4, 9, 9.0]]
您可以使用np.isnan创建掩码并过滤掉outlier
值中的NaN
值:
result = df[~np.isnan(df.outlier)].values.tolist()
print(result)
输出
[['12:28:31', 3, 3, 3.0], ['14:28:31', 6, 7, 7.0], ['14:28:31', 4, 9, 9.0]]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.