小编Dor*_*rki的帖子

错误:ValueWarning:提供了日期索引,但它没有关联的频率信息,因此在例如预测时将被忽略

所以我有一个包含两列的 CSV 文件:日期和价格,但是当我尝试在该时间序列上使用 ARIMA 时,我遇到了这个错误:

ValueWarning:提供了日期索引,但它没有相关的频率信息,因此在预测时将被忽略。
'在例如预测时被忽略。', ValueWarning)

所以我发现了这两个问题:

ValueWarning:未提供频率信息,因此将使用推断频率 MS

/sf/answers/2510249241/

但是当我尝试运行示例中的代码(第二个链接)时:

import pandas as pd
from statsmodels.tsa.arima_model import ARMA

df=pd.DataFrame({"val": pd.Series([1.1,1.7,8.4 ], 
                 index=['2015-01-15 12:10:23','2015-02-15 12:10:23','2015-03-15 12:10:23'])})
print df
'''
                     val
2015-01-15 12:10:23  1.1
2015-02-15 12:10:23  1.7
2015-03-15 12:10:23  8.4
'''

print df.index

'''
Index([u'2015-01-15 12:10:23',u'2015-02-15 12:10:23',u'2015-03-15 12:10:23'], dtype='object')

'''

df.index = pd.DatetimeIndex(df.index)
print df.index
'''
DatetimeIndex(['2015-01-15 12:10:23', '2015-02-15 12:10:23',
               '2015-03-15 12:10:23'],
              dtype='datetime64[ns]', freq=None)
'''

model = ARMA(df["val"], (1,0))
print model
Run Code Online (Sandbox Code Playgroud)

我也收到了同样的 ValueWarning,所以我试图改变这一行:

df.index = pd.DatetimeIndex(df.index)
Run Code Online (Sandbox Code Playgroud)

对此:

df.index = …
Run Code Online (Sandbox Code Playgroud)

python time-series pandas statsmodels arima

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

即使添加 jsconfig 后,Visual Studio Code React 也不会显示错误

所以我正在构建一个 REACT JS 项目,过了一会儿我注意到它没有强调未定义的函数或错误的导入,例如,如果我这样做:

import React, { useState } from 'reactaeasdfas';
Run Code Online (Sandbox Code Playgroud)

它不会说这reactaeasdfas是未定义的。

经过一番搜索后,我发现人们说jsconfig.json应该初始化。

我在网上找到了一个基本的:

{
    "compilerOptions": {
      "module": "commonjs",
      "target": "es6",
      "jsx": "react"
    },
    "include": [
        "src"
    ]
}
Run Code Online (Sandbox Code Playgroud)

上面的代码确实解决了如果我调用未定义的函数,它会用红色下划线,但如果我包含未定义的导入,它仍然不起作用的问题。

注意:我通过create-react-app安装了react项目

reactjs visual-studio-code

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

如何使用 eslint 设置选择格式

我发现如果我在其中写下settings.json

  "eslint.format.enable": true,
  "[javascriptreact]": {
    "editor.defaultFormatter": "dbaeumer.vscode-eslint",
  }
Run Code Online (Sandbox Code Playgroud)

然后我可以使用 ESLint 格式化整个页面ALT + SHIFT + F(或右键单击 -> 设置文档格式)。

我还可以看到,一旦右键单击 -> Format Selection With....,我就可以看到 ESLint 作为一个选项。

但是,如果我选择一行并按右键单击,则Format Selection With...找不到 Eslint 选项。(或作为快捷方式CTRL+K

那么如何使用 ESLint 格式化选择呢?

eslint visual-studio-code

6
推荐指数
0
解决办法
1222
查看次数

通过地图和显示组件进行反应循环

所以我有一个独特的情况,

在我所在的州,我没有可以执行映射的常规列表,然后在每次迭代中显示组件,例如:

list.map(shape => <Shape {...shape} />)
Run Code Online (Sandbox Code Playgroud)

但我有一个哈希图。我需要知道key和 ,value所以我将拥有将其显示为组件所需的信息。所以我找到了一个很好的方法:entries()返回一个Iterator,但是我如何以可以内联显示新组件的方式迭代它?

伪代码中类似的东西:

myHashMap.entries().toList().map((key, value) => <MyComponent myKey={key} myValue={value} />)

typescript reactjs

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

React 默认 create-react-app App 组件渲染两次

我通过命令启动了新的 React 项目:

npx create-react-app my-app --template typescript

然后,我将 App 组件更改为如下所示:

import * as React from 'react';

export default class App extends React.Component<{}> {
  public render() {
    console.log("App Rendered");
    return (
      <div>
        Hello World
      </div>
    );
  }
}
Run Code Online (Sandbox Code Playgroud)

当我观看控制台日志(在 Google Chrome 和 Microsoft Edge 中)时,我收到以下消息:

[HMR] Waiting for update signal from WDS...
App Rendered
App Rendered
Run Code Online (Sandbox Code Playgroud)

我的问题:
为什么应用程序渲染被调用两次
如何删除该 WDS 的第一条消息?

这是我的package.json(我运行时的默认值create-react-app):

{
  "name": "my-app",
  "version": "0.1.0",
  "private": true,
  "dependencies": {
    "@testing-library/jest-dom": "^4.2.4",
    "@testing-library/react": …
Run Code Online (Sandbox Code Playgroud)

reactjs

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

在数组中优先选择高索引号而不是低索引号

假设我有两个带有5个单元格的排序数组:

数组中的数字在2到14之间(包括2到14,它们是整数)

现在,当最低的数组为:[0,100]时,我需要给每个数组一个等级:

[2,2,2,2,2],最高为[14,14,14,14,14]

现在的事情是:索引很重要,因此例如,如果我们看一下这些数组:

1)[2,2,2,2,10]

2)[8,8,8,8,9]

因此,第一个比第二个更好,并且得分会更高。

并且如果索引中有一个领带(从右到左),例如:

1)[3,4,5,10,13]

2)[3,4,7,10,13]

因此索引编号:3和4相同,但是由于7高于5。因此,在这种情况下,第二个数组的得分更高。

我在数学上苦苦挣扎,我想提高效率,现在我可以做类似的事情:

2 ^ array [i]但效率不高,所以我设法做的主要事情是

double rank = 0;
for (int i = 0; i < 5; i++)
{
    rank += (double)array[i] / 14 + i;
}
Run Code Online (Sandbox Code Playgroud)

因为如果array [i]可以在2到14之间,那么1/7 <= array [i] / 14 <= 1,所以我认为如果每次迭代都添加+ i,那么下一个迭代将大于所有以前的那些,但这是错误的。

我很乐意在这里提供一些帮助。

c# arrays algorithm integer

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