如何从记事本文件中获取数据并使用fft(快速傅立叶变换)

2024-05-14 20:20:47 发布

您现在位置:Python中文网/ 问答频道 /正文

我在编程方面有点新手,因为我们在物理学位上是被要求去做的。我使用的是python2。在

我得到了一个包含两列数据的txt文件,前几行如下所示:

0.000000000000000000e+00 7.335686114232199684e-02 
1.999999999999999909e-07 7.571960558042964973e-01
3.999999999999999819e-07 9.909475704320810374e-01
5.999999999999999728e-07 3.412754086075696081e-01
7.999999999999999638e-07 -5.558766000866324219e-01
9.999999999999999547e-07 -9.810046985453722002e-01
1.199999999999999946e-06 -5.436864816312496629e-01
1.399999999999999937e-06 2.645021165628647641e-01
1.599999999999999928e-06 9.667259209284312371e-01
1.799999999999999919e-06 7.395753817164774091e-01
1.999999999999999909e-06 7.289488801158025555e-02
2.200000000000000112e-06 -7.925906572709742193e-01
2.399999999999999891e-06 -9.727702002847055107e-01
2.599999999999999671e-06 -1.772398644968510018e-01
2.799999999999999873e-06 6.627909312992285029e-01
3.000000000000000076e-06 1.022032186188189362e+00
3.199999999999999855e-06 5.531242183135693935e-01

上面有几百条线。在

问题是: 本周你将得到一个文件,其中包含一个模拟的核磁共振时域响应后的外部脉冲。衰减的特征是自由频率。数据有一个 振荡频率和第二个频率包含两个频率的混合。 编写一个程序来计算两个信号的快速傅里叶变换并绘制它们 在频域中。在

有人能给我举个例子吗?不幸的是,我们在实验室里没有得到太多的指导,只有一些在线教程和其他告诉谷歌的东西。在


Tags: 文件数据程序txt信号编程绘制特征
2条回答

要读取.txt文件,您需要执行以下操作(不是最快但最清晰的):

column1 = []
column2 = []
infile = open("MyFile.txt", "r")
for l in infile.readlines():
    if l.strip():
        v1 = float(l.split()[0])
        v2 = float(l.split()[1])
        column1.append(v1)
        column2.append(v2)

对于fft,看看numpy

我会把我的评论变成答案:

其实很简单。使用numpy.genfromtxt()将数据加载到numpy数组中,然后可以从numpy.fft中选择某种形式的FFT。在

因为这是你的练习,我不会写下确切的代码,但这基本上就是总结。在

相关问题 更多 >

    热门问题