小编lte*_*e__的帖子

了解时间序列数据上的傅立叶变换分量

我正在学习 Tensorflow 教程,并且遇到了快速傅立叶变换:

fft = tf.signal.rfft(df['T (degC)'])
f_per_dataset = np.arange(0, len(fft))

n_samples_h = len(df['T (degC)'])
hours_per_year = 24*365.2524
years_per_dataset = n_samples_h/(hours_per_year)

f_per_year = f_per_dataset/years_per_dataset
plt.step(f_per_year, np.abs(fft))
plt.xscale('log')
plt.ylim(0, 400000)
plt.xlim([0.1, max(plt.xlim())])
plt.xticks([1, 365.2524], labels=['1/Year', '1/day'])
_ = plt.xlabel('Frequency (log scale)')
Run Code Online (Sandbox Code Playgroud)

该数据集包含每小时的温度测量值。代码对此执行 FFT,以查看哪些组件有很大影响,基本上是在数据中找到周期性。这产生了以下情节:

在此处输入图片说明

虽然我不太了解X轴。我确实看到它是一个对数刻度,但是,我看到“1”对应于一年,“365.2524”代表每日周期。这是否意味着比例尺是“一年的第 n”,所以一年的第 1 是一年,一年的 365.2524 是一天,同样的逻辑 4 是一个季度,2 是半年之类的?如果是这样,最左边的值 (0) 是什么意思?在一年的第 0 日也有一些周期性——这在直觉上意味着什么?

这里还有一个。有一些关键的区别。这次的数据集是亚马逊股票的每日交易量(因此数据集不再是每小时,而是每天)。此外,该数据集仅包含 WEEKDAY 数据,因此将一年中的天数标记为 252(此数据集一年中的平均天数)。

fft = tf.signal.rfft(df['Volume'])
f_per_dataset = np.arange(0, len(fft))

n_samples_d = len(df['Volume'])
days_per_year = 252
years_per_dataset = n_samples_d/(days_per_year)

f_per_year = f_per_dataset/years_per_dataset …
Run Code Online (Sandbox Code Playgroud)

python fft time-series

5
推荐指数
0
解决办法
389
查看次数

Spark SQL - CASE-THEN的JAVA语法?

我注意到如果我使用SQLContext.sql()函数,我可以使用CASE-THEN和Spark .有没有办法在JAVA语法中直接在数据帧上使用它?怎么样?现在,我写道:

SparkConf sparkConf = new SparkConf();
JavaSparkContext ctx = new JavaSparkContext(sparkConf);
SQLContext sqlContext = new SQLContext(ctx);
DataFrame df = //some imported data 
df.registerTempTable("df");
sqlContext.sql("SELECT *use case-then in here* FROM df");
Run Code Online (Sandbox Code Playgroud)

我正在寻找类似的东西

df.select(case("this").then("that"));
Run Code Online (Sandbox Code Playgroud)

java apache-spark apache-spark-sql spark-dataframe

4
推荐指数
1
解决办法
2399
查看次数

Oracle SQL - 在WITH子句中使用ROWNUM进行分组?

我正在尝试让数据库中的用户拥有数据库中最大段的所有权.为此,我正在尝试:

SELECT owner, MAX(bytes) 
FROM SYS.DBA_SEGMENTS
GROUP BY owner
HAVING ROWNUM <= 1;
Run Code Online (Sandbox Code Playgroud)

然而,这会回来"not a GROUP BY expression".为什么我不能只选择第一行?我该怎么写这个查询?谢谢!

sql oracle plsql

4
推荐指数
1
解决办法
2万
查看次数

具有int值的枚举?

我想enum为可能的成绩做出贡献.这是一个有效的例子:

public enum Grade
{
    A, B, C, D, E, F
}
Run Code Online (Sandbox Code Playgroud)

但是,我希望成绩是整数,比如

public enum Grade
{
    1, 2, 3, 4, 5
}
Run Code Online (Sandbox Code Playgroud)

为什么第一个工作但不是第二个?如何创建一个类似的变量只能取1-5的值(并且可以为空)?

c# enums

4
推荐指数
3
解决办法
921
查看次数

熊猫-将AM / PM格式更改为24h

我有一些时间'10:23:34 PM'以字符串格式输入,我想将其转换为类似的日期时间'22:23:45'。我正在使用

datetime = posts['time'].apply(lambda x: datetime.strptime(x, '%I:%M:%S %p').strftime('%I:%M:%S'))
Run Code Online (Sandbox Code Playgroud)

但是,这似乎无视AM / PM标记,并且所有信息都好像时间在AM一样,对于'10:23:34 PM''10:23:34'作为输出得到的输入是正确的,但应该是'22:23:45'。我怎样才能解决这个问题?

python datetime pandas

3
推荐指数
1
解决办法
7200
查看次数

Python - 获取JSON中的所有字段值

我有一个geoJSON文件,我想在子字段中提取所有可能的值.所以对于两件长json,它会是这样的:

data['features'][0]['properties']['cellId']
#returns 38
data['features'][1]['properties']['cellId']
#returns 51
Run Code Online (Sandbox Code Playgroud)

我想回来[38, 51].可能吗?我试过了

data['features'][0:]['properties']['cellId']
Run Code Online (Sandbox Code Playgroud)

但它不起作用,因为 TypeError: list indices must be integers or slices, not str

python json

3
推荐指数
1
解决办法
5537
查看次数

Pandas - 用行子集填充

我试图在某些条件适用的情况下用 0 填充一些行。我想:

df.loc[:,(df.Available == True) & (df.Intensity.isnull())].Intensity = df.loc[(df.Available == True) & (df.Intensity.isnull())].Intensity.fillna(0, inplace=True)
Run Code Online (Sandbox Code Playgroud)

这不起作用 bc IndexingError: Unalignable boolean Series key provided,但是当我尝试时

df.loc[(df.Available == True) & (df.Intensity.isnull())].Intensity = df.loc[(df.Available == True) & (df.Intensity.isnull())].Intensity.fillna(0, inplace=True)
Run Code Online (Sandbox Code Playgroud)

注册为更新副本。我怎样才能做到这一点?谢谢!

python pandas fillna

3
推荐指数
1
解决办法
3431
查看次数

SKLearn TF-IDF丢弃数字?

我正在进行文本分析,我想忽略那些只是数字的"单词".例如.从文本"这是000斯巴达!" 只应使用'this','is'和'Sparta'这两个词.有没有办法做到这一点?怎么样?

tf-idf scikit-learn

3
推荐指数
1
解决办法
2608
查看次数

熊猫连接列

我有两个 df-s:

在此处输入图片说明

我想沿着列连接,例如得到一个 1000x61118 的数据帧。所以我在做:

df_full = pd.concat([df_dev, df_temp2], axis=1)
df_full
Run Code Online (Sandbox Code Playgroud)

然而,这会产生 2000x61118 df,并用 NaN 填充所有内容......我不知道为什么。什么可能导致这种行为?

python dataframe pandas

3
推荐指数
1
解决办法
1021
查看次数

Scikit-Learn - 对 Pandas 数据帧的某些列进行一次性编码

我有一个X包含整数、浮点数和字符串列的数据框。我想对“对象”类型的每一列进行单热编码,所以我试图这样做:

encoding_needed = X.select_dtypes(include='object').columns
ohe = preprocessing.OneHotEncoder()
X[encoding_needed] = ohe.fit_transform(X[encoding_needed].astype(str)) #need astype bc I imputed with 0, so some rows have a mix of zeroes and strings.
Run Code Online (Sandbox Code Playgroud)

但是,我最终得到了IndexError: tuple index out of range. 根据编码器期望的文档X: array-like, shape [n_samples, n_features],我不太明白这一点,所以我应该可以传递数据帧。如何对专门标记为 的列列表进行一次性编码encoding_needed

编辑:

数据是机密的,因此我无法共享它,也无法创建虚拟数据,因为它按原样有 123 列。

我可以提供以下内容:

X.shape: (40755, 123)
encoding_needed.shape: (81,) and is a subset of columns.
Run Code Online (Sandbox Code Playgroud)

全栈:

---------------------------------------------------------------------------
IndexError                                Traceback (most recent call last)
<ipython-input-90-6b3e9fdb6f91> in <module>()
      1 encoding_needed = X.select_dtypes(include='object').columns
      2 …
Run Code Online (Sandbox Code Playgroud)

python pandas scikit-learn one-hot-encoding

3
推荐指数
1
解决办法
2259
查看次数