标签: data-analysis

用Python进行傅里叶变换

我有一组数据。它显然具有一定的周期性。我想通过使用傅里叶变换找出它的频率并将其绘制出来。

这是我的一个镜头,但看起来不太好。在此输入图像描述

这是相应的代码,我不知道为什么它失败:

import numpy
from pylab import *
from scipy.fftpack import fft,fftfreq
import matplotlib.pyplot as plt
dataset = numpy.genfromtxt(fname='data.txt',skip_header=1)
t = dataset[:,0]
signal = dataset[:,1]
npts=len(t)

FFT = abs(fft(signal))
freqs = fftfreq(npts, t[1]-t[0])
subplot(211)
plot(t[:npts], signal[:npts])
subplot(212)
plot(freqs,20*log10(FFT),',')
xlim(-10,10)
show()
Run Code Online (Sandbox Code Playgroud)

我的问题是:由于原始数据看起来非常周期性,并且我期望看到在频域中峰值非常尖锐;我怎样才能让峰看起来更漂亮?

python data-analysis scipy python-2.7

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

通过将每列的宽度定义为字符数来读取 python pandas 中的数据

我正在尝试读取一个文件,其中的列由可变空格分隔。我想知道是否有一种方法可以通过根据为该列保留的字符数定义每列的宽度来读取文件。

例如:

A B          C  D
- ---------- -- ---
1 foo        32 9.5
4 bar           5.4
5 foofoo_bar 44 
Run Code Online (Sandbox Code Playgroud)

假设我们必须读取上面的数据。请注意,C 列和 D 列中不存在某些条目。但是,请注意文件中的第二行(带有破折号的行)指示特定列可以包含的最大字符数。

那么,问题是给定数据集中每列的最大宽度,有没有办法使用 pandas 或任何其他包读取 python 中的数据集?

python csv numpy data-analysis pandas

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

Python - 从 Pandas DataFrame 中删除包含数字的行

我有一个数据框,其中有一列,如下所示:

Value
xyz123
123
abc
def
Run Code Online (Sandbox Code Playgroud)

我想删除任何包含数字的行,所以我最终得到一个像这样的数据框:

Value
abc
def
Run Code Online (Sandbox Code Playgroud)

我努力了

df = df[df['Value'].str.contains(r'[^a-z]')]
Run Code Online (Sandbox Code Playgroud)

但我得到了这个错误:

“类型错误:‘方法’对象不可下标”

python data-analysis pandas

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

BigQuery 按日期过滤

我想使用 BigQuery 中的旧版 SQL 根据日期和时间格式“2016-01-09 16:31:04.000 UTC”过滤数据。请帮我解决正确的语法。我被困住了。

代码

SELECT *
FROM
[table.column] AS Alias
WHERE
date >  '2017-03-31Z'; 
Run Code Online (Sandbox Code Playgroud)

sql data-analysis google-bigquery

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

无法抓取 NSE 中的表格数据

我正在尝试从 NSE 网站抓取 Advances/Declines - https://www1.nseindia.com/live_market/dynaContent/live_market.htm

前进/下降在 HTML 中采用表格格式。但我无法检索网站中显示的实际数值。

from bs4 import BeautifulSoup
import pandas as pd
import requests

url = "https://www1.nseindia.com/live_market/dynaContent/live_market.htm"
webpage = requests.get(url);
soup = BeautifulSoup(webpage.content, "html.parser");
for tr in soup.find_all('tr'):
  advance = tr.find_all('td')
  print(advance)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

我只能得到一个空值或无。我不确定我做错了什么。当我检查网站中的元素时,我看到数值 978、904,但在 Spyder 中,这些元素中的值显示有连字符。有人可以帮忙吗?

在此输入图像描述

python data-analysis web-scraping

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

如何获得防风草多项逻辑回归模型的系数?

我使用 tidymodels 框架拟合多项式逻辑回归模型来预测鸢尾花数据集中的物种。

library(tidymodels)

iris.lr = multinom_reg(
  mode="classification",
  penalty=NULL,
  mixture=NULL
) %>%
  set_engine("glmnet")

iris.fit = iris.lr %>%
  fit(Species ~. , data = iris)
Run Code Online (Sandbox Code Playgroud)

然后我想查看模型的系数并写出公式。我的理解是我应该从 iris.fit 获取这个。

iris.fit 的输出有一个 100 行表,其中包含 Df、%Dev 、Lambda。iris 数据集只有 4 个预测变量。如何将此输出转换为系数?

statistics r classification data-analysis tidymodels

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

Scikit-Learn 中的累积分布函数 (CDF)?

我通过 scikit-learn 和搜索概率密度函数(PDF,黑线)获得了我的 SPS(太阳能发电站)发电的 GMM 模型:

图。1

但我想要一个概率函数(CDF 或累积分布函数)。换句话说,我想得到一个像示例一样的函数:

图2

可以接收 y 轴上 [0, 1] 范围内的值,并在所有 x 轴上增长。scikit-learn 允许还是不允许?

python data-analysis scikit-learn

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

.vcf 数据到 pandas 数据框

如何将此VCF 数据转换为 pandas 数据框?

注意:复制问题不需要完整文件。只需前 50 行(上面要点链接的第一部分)就可以了。

理想情况下,我希望采用以下形式:

在此输入图像描述

到目前为止,我只能获取标题:

import pandas as pd

f = open('clinvar_final.txt',"r")

for line in f.readlines():
    if line[:5] == 'CHROM':
        vcf_header = line.strip().split('\t')

df = pd.DataFrame
df.header = vcf_header
Run Code Online (Sandbox Code Playgroud)

python data-analysis pandas vcf-variant-call-format

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

Polars 相当于 pandas 表达式 df.groupby['col1','col2']['col3'].sum().unstack()

pandasdf=pd.DataFrame(
    {
        "A": [1, 2, 3, 4, 5],
        "fruits": ["banana", "banana", "apple", "apple", "banana"],
        "B": [5, 4, 3, 2, 1],
        "cars": ["beetle", "audi", "beetle", "beetle", "beetle"],
        "optional": [28, 300, None, 2, -30],
    }
)
pandasdf.groupby(["fruits","cars"])['B'].sum().unstack()
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

如何在极坐标中创建等效的真值表?

类似于下表的真值表

df=pl.DataFrame(
    {
        "A": [1, 2, 3, 4, 5],
        "fruits": ["banana", "banana", "apple", "apple", "banana"],
        "B": [5, 4, 3, 2, 1],
        "cars": ["beetle", "audi", "beetle", "beetle", "beetle"],
        "optional": [28, 300, None, 2, -30],
    }
)
df.groupby(["fruits","cars"]).agg(pl.col('B').sum()) #->truthtable
Run Code Online (Sandbox Code Playgroud)

代码的效率很重要,因为数据集太大(与 apriori 算法一起使用)

Polars 中的 unstack 函数是不同的,pd.crosstab …

python analytics data-analysis dataframe python-polars

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

Pandas没有记录DataFrame.keys()方法

我是Pandas的新手,在玩它的时候Dataframe,我找到了keys()非常类似的方法dict.keys().但我在文档中找不到它.我错过了什么?

python dictionary data-analysis dataframe pandas

0
推荐指数
1
解决办法
5414
查看次数