Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/44.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 提取周期的数据分析_Python - Fatal编程技术网

Python 提取周期的数据分析

Python 提取周期的数据分析,python,Python,我之所以问这个问题,是因为我最近偶然发现了一些我自己从未想到过的聪明代码。我提到的代码使用numpython库。它根据信号是否高于阈值将信号转换为真/假阵列。然后它生成一个与每个位的中间对齐的数组。然后,它将数据重塑为8组。分析数千个数据点需要六行代码。我写过类似的代码,但它使用for循环遍历整个数据集,查找边,然后将这些边转换为位。这需要数百行代码才能完成 图中是我试图分析的数据集的一个示例。开头总是有8位相同的前导码。我想用前导提取信号的周期 在python中,有没有什么方法可以不费力地查找

我之所以问这个问题,是因为我最近偶然发现了一些我自己从未想到过的聪明代码。我提到的代码使用numpython库。它根据信号是否高于阈值将信号转换为真/假阵列。然后它生成一个与每个位的中间对齐的数组。然后,它将数据重塑为8组。分析数千个数据点需要六行代码。我写过类似的代码,但它使用for循环遍历整个数据集,查找边,然后将这些边转换为位。这需要数百行代码才能完成

图中是我试图分析的数据集的一个示例。开头总是有8位相同的前导码。我想用前导提取信号的周期


在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]