python - 如何在熊猫数据框中找到一列numpy数组的布尔值?
问题描述
所以我试图找出数据帧中numpy数组中的前一个数字是否大于一个数字。所以这里是代码:
import pandas as pd
import numpy as np
arr_1 = np.array([7, 1, 6, 9, 2, 4])
arr_2 = np.array([5, 8, 9, 10, 2, 3])
arr_3 = np.array([1, 9, 3, 4, 5, 1])
dict_of_arrs = {
'arr' : [arr_1, arr_2, arr_3]
}
df = pd.DataFrame(dict_of_arrs)
df
其输出为:
arr
0 [7, 1, 6, 9, 2, 4]
1 [5, 8, 9, 10, 2, 3]
2 [1, 9, 3, 4, 5, 1]
所以我的问题是,如果每行的每个数组中的第二个数字大于第一个,以及每个数组中的每个数字的第三个是否大于第二个等等,我的问题是什么代码能够找出来。如果数字更大,则代码的输出为 True,如果数字不在每个数组中,则输出为 False。谢谢你。
解决方案
我会做
df.arr.apply(lambda x : np.diff(x)>0)
0 [False, True, True, False, True]
1 [True, True, True, False, True]
2 [True, False, True, True, False]
Name: arr, dtype: object
推荐阅读
- react-native - 使用匹配“^((?!:ios:).)*$”的测试运行所有匹配 /e2e/i 的测试套件
- python - 如何将类的实例作为参数传递给装饰类中定义的实例方法的装饰器?
- python - 如何使用 tkinter.filedialog.askopenfilename 打开 jpg 和 pdf 文件?
- google-cloud-platform - 如何通过 Python 使用“Cloud SQL Admin API”获取新创建的备份的 ID?
- azure - 从当前用户发送来自 Azure/Azure Function/Outlook 的邮件
- linux - 在 linux build/temp.linux-x86_64-3.6/_clips.c:523:19 上安装 clipspy: 致命错误: clips.h: No such file or directory #include
- python - 如何在 dask 中实现“groupby”滚动平均值?
- c++ - 如何在 MFC 中导出 mysql 结果(选择数据)
- laravel - Laravel Excel,分块数据时内存耗尽的问题
- android - 如何修复“SQLite 无列异常”?