以下是一个示例代码,演示如何保留特定列中元素(以timedelta64形式)最接近零的行。
import pandas as pd
import numpy as np
# 创建示例数据框
data = {'col1': [np.timedelta64('1D'), np.timedelta64('2D'), np.timedelta64('3D')],
'col2': [np.timedelta64('4D'), np.timedelta64('5D'), np.timedelta64('6D')],
'col3': [np.timedelta64('7D'), np.timedelta64('8D'), np.timedelta64('9D')]}
df = pd.DataFrame(data)
# 定义需要保留最接近零的列
columns_to_check = ['col1', 'col2', 'col3']
# 计算每行中最接近零的元素的绝对值
df['closest_to_zero'] = df[columns_to_check].apply(lambda row: min(abs(x) for x in row), axis=1)
# 保留最接近零的行
df_closest_to_zero = df[df['closest_to_zero'] == df['closest_to_zero'].min()]
# 打印结果
print(df_closest_to_zero)
输出结果:
col1 col2 col3 closest_to_zero
0 1 days 4 days 7 days 1 days
在这个示例中,我们创建了一个包含timedelta64
类型数据的数据框。然后,我们定义了需要保留最接近零的列,并使用apply
函数计算每行中最接近零的元素的绝对值。最后,我们筛选出closest_to_zero
列中最小值的行,并打印结果。
上一篇:保留那些不产生错误的函数副本。
下一篇:保留内联样式,添加CSS