我目前正在学习离散傅里叶变换,我正在玩numpy来更好地理解它.
我试图绘制一个"sin x sin x sin"信号并获得一个带有4个非零点的干净FFT.我天真地告诉自己:"好吧,如果我用这些幅度和频率绘制一个"罪恶+罪恶+罪恶+罪恶"信号,我应该获得相同的"罪x x sin x sin"信号,对吧?
嗯...不完全是
(首先是"x"信号,第二个是"+"信号)

两者共享相同的幅度/频率,但不是相同的信号,即使我可以看到它们有一些相似之处.
好的,因为我只绘制了FFT的绝对值,我想我丢失了一些信息.
然后我绘制了两个信号的实部,虚部和绝对值:

现在,我很困惑.我该怎么办?我从数学的角度阅读有关DFT的内容.我知道复杂的价值来自单位圈.我甚至不得不了解希尔伯特的空间,以了解它是如何工作的(这很痛苦!......而且我只是划伤了表面).我只想了解这些真实/想象的情节是否在数学世界之外具有任何具体含义:
代码:
import numpy as np
import matplotlib.pyplot as plt
N = 512 # Sample count
fs = 128 # Sampling rate
st = 1.0 / fs # Sample time
t = np.arange(N) * st # Time vector
signal1 = \
1 *np.cos(2*np.pi * t) *\
2 *np.cos(2*np.pi * 4*t) *\
0.5 *np.cos(2*np.pi * 0.5*t)
signal2 = \
0.25*np.sin(2*np.pi * …Run Code Online (Sandbox Code Playgroud) 我有一个linux目录(并且不需要任何Windows结帐):
/home/me/projects/project1
Run Code Online (Sandbox Code Playgroud)
在这个项目中,我需要SVN(1.8.8)来跟踪符号链接"link1":
/home/me/projects/project1/link1/<some_directories_and_files>
Run Code Online (Sandbox Code Playgroud)
但是SVN不会让我这样做,它只是添加link1而不是它的内容.如果我尝试添加其内容,我会收到错误消息:
svn add link1/*
svn: E145001: Can't schedule an addition of '/home/me/projects/project1/link1/first_directory' below a not-directory node
Run Code Online (Sandbox Code Playgroud)
我尝试将link1转换为硬链接,但我也不能这样做:
ln /path/to/my/linked/directory link1
ln: ‘/path/to/my/linked/directory’: hard link not allowed for directory
Run Code Online (Sandbox Code Playgroud)
任何的想法?你如何处理这种配置?我只需/home/me/projects/project1要从一个简单的提交一切svn commit
我需要在一个空的 Pandas Dataframe 中存储一些值。类似的东西:
| col1 col2 col3
------------------------
row1 | v1 v2 v3
row2 | v4 v5 v6
row3 | v7 v8 v9
Run Code Online (Sandbox Code Playgroud)
我从其他来源获取单元格ex: (row2, col3, v6),但我事先不知道我将拥有多少行和多少列。
我试图以这种方式填充我的 DataFrame,但它不起作用:
import pandas as pd
df = pd.DataFrame()
df["col1"] = ""
df["col2"] = ""
df["col3"] = ""
df["col1"].loc["row1"] = "v1"
df["col2"].loc["row2"] = "v4"
df["col3"].loc["row3"] = "v9"
# ...
Run Code Online (Sandbox Code Playgroud)
当我想显示 DataFrame 时,
print(df)
Run Code Online (Sandbox Code Playgroud)
它显示为一个空的 DataFrame。
Empty DataFrame
Columns: [col1, col2, col3]
Index: []
Run Code Online (Sandbox Code Playgroud)
出于好奇,我尝试了
print(df["col1"])
Run Code Online (Sandbox Code Playgroud)
我得到:
row1 v1
row2 v4 …Run Code Online (Sandbox Code Playgroud) 我很难将搅拌机模型导出为 glTF 2.0 格式(用于 godot):
(我仍然可以将其导出为默认的 .dae 格式)
因此,我尝试为所有 python3 版本(python3、python3.6、python3.9)安装 numpy:
python<versions> -m pip install numpy
Run Code Online (Sandbox Code Playgroud)
重新启动搅拌机后,我仍然有此消息。
我尝试使用 Blender 集成的 python (3.9) shell 来安装 numpy,但没有更多的运气:
现在我该怎么做?
我想使用 Python 及其subprocess模块从 Linux 执行一些 Mysql 命令。
没有 Python,从 shell 中,我的命令行是:
mysql --database=mydb --host=localhost --port=3306 --password= --execute="select * from mytable" --batch
Run Code Online (Sandbox Code Playgroud)
使用 Python,我有:
cmd = ['mysql']
cmd.extend(['--database=', self._database])
cmd.extend(['--password=', self._password])
cmd.extend(['--execute=', query])
(...)
p = subprocess.Popen(cmd, shell = False, stdout = subprocess.PIPE, stderr = subprocess.PIPE)
out, err = p.communicate()
errcode = p.returncode
Run Code Online (Sandbox Code Playgroud)
不幸的是,它不起作用(mysql 只是打印用法),我认为,子进程会生成这种输出(' '.join(cmd)):
mysql --database= mydb --host= localhost --port= 3306 --password= --execute= "select * from mytable" --batch
Run Code Online (Sandbox Code Playgroud)
IE。每个参数之间添加空格,分隔=和值。 …
python ×3
linux ×2
numpy ×2
blender ×1
dft ×1
fft ×1
ln ×1
pandas ×1
pip ×1
python-2.7 ×1
python-3.x ×1
subprocess ×1
svn ×1
symlink ×1