Python 提取周期的数据分析
我之所以问这个问题,是因为我最近偶然发现了一些我自己从未想到过的聪明代码。我提到的代码使用numpython库。它根据信号是否高于阈值将信号转换为真/假阵列。然后它生成一个与每个位的中间对齐的数组。然后,它将数据重塑为8组。分析数千个数据点需要六行代码。我写过类似的代码,但它使用for循环遍历整个数据集,查找边,然后将这些边转换为位。这需要数百行代码才能完成 图中是我试图分析的数据集的一个示例。开头总是有8位相同的前导码。我想用前导提取信号的周期Python 提取周期的数据分析,python,Python,我之所以问这个问题,是因为我最近偶然发现了一些我自己从未想到过的聪明代码。我提到的代码使用numpython库。它根据信号是否高于阈值将信号转换为真/假阵列。然后它生成一个与每个位的中间对齐的数组。然后,它将数据重塑为8组。分析数千个数据点需要六行代码。我写过类似的代码,但它使用for循环遍历整个数据集,查找边,然后将这些边转换为位。这需要数百行代码才能完成 图中是我试图分析的数据集的一个示例。开头总是有8位相同的前导码。我想用前导提取信号的周期 在python中,有没有什么方法可以不费力地查找
在python中,有没有什么方法可以不费力地查找边缘就可以做到这一点?您的源数据是什么?一维还是二维阵列?通常,您可以使用np.abs(x[:-1]-x[1:])>limit@CookieOfFortune数据是一个由大约一百万个点组成的一维数组。采样率是已知的。我在寻找边之间有多少元素。
# Find the transitions
edges = np.abs(x[:-1] - x[1:]) > limit
# Find the indices where the transitions occur
indices = np.where(edges)[0]
# Count the elements as the difference between the indices
counts = indices[1:] - indices[:-1]