公告:1)网站程序升级:Q2A升级到1.8.6,Wordpress升级到5.7.2
2)修复了头像加载慢与提交问题反应慢等问题
2021-06-16

欢迎来到 Mathematica 问答社区

提问时请贴上文本代码

语法高亮:在编辑器中点击

被禁止的话题:广告破解

请阅读:《提问的智慧》

备用域名:mma.ooo

支持LaTex数学公式
行内公式标识符:\$ 或“$\backslash ($”+“$\backslash )$”,
行间公式标识符:\$\$ 或 “$\backslash [$”+“$\backslash ]$”

社区建议QQ群:365716997

分类

0 投票
390 浏览

一组数经傅里叶变换后变为一组复数,但是单个数据却不可以傅里叶变换,所以我无法用Select选出经傅里叶变换后为实数的原数据及其位置

data = {1, 1, 2, 2, 1, 1, 0, 0}
Fourier[data]
Select[Fourier[data], Im@# == 0 &]

与此相关的另一个问题是,如何返回符合要求的列表数据及其位置

Position[{1, 3, 1, 9, 2, 6, 4, 2, 6, 5}, # > 3 &]

分类:列表操作 | 用户: mma-2-2-2 (1.3k 分)
修改于 用户:mma-2-2-2

2 个回答

+2 投票
 
已采纳
data = {1, 1, 2, 2, 1, 1, 0, 0}
Pick[data, Fourier[data], _?(Im[#] == 0 &)]

 

用户: 无影东瓜 (1.2k 分)
采纳于 用户:mma-2-2-2
0 投票

第二个问题可以这样解决

Position[{1, 4, 3, 8, 9, 7}, n_ /; n > 3]

第一个问题还需大家帮助

用户: mma-2-2-2 (1.3k 分)
...