# make dataset
#pr = get_prices()
#pr = labelling_relabeling(pr, relabeling=False)
#a, b = tester(pr, MARKUP, use_meta=False, plot=False)
#pr['meta_labels'] = b
#pr = pr.dropna()
#pr = labelling_relabeling(pr, relabeling=True)
我得到了一个错误
Traceback (most recent call last):
File "F:/FX/Python/meta_modeling_Viborka.py", line 386, in <module>
res.append(brute_force(pr[pr.columns[1:]], bad_samples_fraction=0.5))
File "F:/FX/Python/meta_modeling_Viborka.py", line 128, in brute_force
X = X[X.index >= START_DATE]
File "C:\Program Files\Python38\lib\site-packages\pandas\core\ops\common.py", line 81, in new_method
return method(self, other)
File "C:\Program Files\Python38\lib\site-packages\pandas\core\arraylike.py", line 60, in __ge__
return self._cmp_method(other, operator.ge)
File "C:\Program Files\Python38\lib\site-packages\pandas\core\indexes\range.py", line 964, in _cmp_method
return super()._cmp_method(other, op)
File "C:\Program Files\Python38\lib\site-packages\pandas\core\indexes\base.py", line 6783, in _cmp_method
result = ops.comparison_op(self._values, other, op)
File "C:\Program Files\Python38\lib\site-packages\pandas\core\ops\array_ops.py", line 296, in comparison_op
res_values = _na_arithmetic_op(lvalues, rvalues, op, is_cmp=True)
File "C:\Program Files\Python38\lib\site-packages\pandas\core\ops\array_ops.py", line 171, in _na_arithmetic_op
result = func(left, right)
File "C:\Program Files\Python38\lib\site-packages\pandas\core\computation\expressions.py", line 239, in evaluate
return _evaluate(op, op_str, a, b) # type: ignore[misc]
File "C:\Program Files\Python38\lib\site-packages\pandas\core\computation\expressions.py", line 70, in _evaluate_standard
return op(a, b)
TypeError: '>=' not supported between instances of 'int' and 'datetime.datetime'
>>>
这可能意味着属性和标签是通过函数自动建立的。
大概是这样。
当应用于新数据时,会使用已经训练好的模型,不需要删除任何东西。
而在初始化开始训练时,为什么要删除呢?我并不拘泥于文字,我只是不明白--我们一开始就做了一次标记,然后我们马上又做了一次标记.....。我不明白这一点。
如果你想要一样--让最小和最大交易持续时间一样,最小=最大
不,我只是想试试我的取样,要做到这一点,我需要了解那里需要删除什么。
也许吧
在初始化训练开始时,为什么要删除它?我不拘泥于文字,我只是不明白--我们一开始做了一次标记,然后马上又做了一次标记....。我不明白这一点。
不,我只是想试试我的采样,要做到这一点,我需要了解那里需要删除什么。
如果有兴趣,我可以推出其他更 "清晰"、更简单的变体。因为这个有点难以理解。这里有很多假设,你可能会感到困惑。
如果有兴趣,我可以推出其他更 "清晰"、更简单的变体。因为这个有点难以理解。
我对任何有少量描述的代码示例都感兴趣,因为我还不太了解 python 代码。
我对任何描述不多的代码示例都感兴趣,因为我还不太了解 python 代码。
Python 非常简单。从字面上看,有几本 "Python for Complex Problems"(《Python 解决复杂问题》)的书--它涵盖了 numpy、pandas、sklearn 等基本包的使用。还有 Mark Lutz 的《Learning Python, Volume 1》。第二本是关于类的,不需要太多。
谢谢你的推荐。Python 也许很简单,但我的记忆力已经变差了--所以很难学习新东西。
在创建有两个目标的样本后,"关闭 "列是否涉及到其他地方,或者是否可以用零填充?
一般来说,我的 csv 文件中的数据格式如下
因此,我通过以下代码使它们看起来与文章中描述的一样
# Загрузите данные из файлов Load_train_data = pd.read_csv('E:\\FX\\MT5_CB\\MQL5\\Files\\Catboost_Tester_M02_104_SMO\\Setup\\train.csv',sep=';') # Сохранили предикторы train_data = Load_train_data.loc[:, :'iVolumes_B0_S15_D1'] # Сохранили значения целевой train_labels = Load_train_data['Target_100'] # Преобразование столбца 'Time' в формат datetime Load_train_data['Time'] = pd.to_datetime(Load_train_data['Time'], format='%Y.%m.%d %H:%M:%S') # Преобразование обратно в строку с нужным форматом #Load_train_data['Time'] = Load_train_data['Time'].dt.strftime('%Y-%m-%d %H:%M:%S') # Сохранили значение столбца train_taime = Load_train_data['Time'] # Вывод результата print(train_taime) # Создали новый DataFrame объединением столбцов combined_data = pd.concat([train_taime, train_data, train_labels], axis=1) # Добавили новый столбец "close" после "train_taime" со значениями "1.1" combined_data.insert(combined_data.columns.get_loc('Time') + 1, 'close', 1.1) # Переименовали столбец "Target_100" в "labels" combined_data.rename(columns={'Target_100': 'labels'}, inplace=True) # Добавили столбец с данными из train_labels combined_data['meta_labels'] = train_labels pr = combined_data # Вывод результата print(combined_data)打印如下
接下来,我对您当年的函数进行注释
我得到了一个错误
Traceback (most recent call last): File "F:/FX/Python/meta_modeling_Viborka.py", line 386, in <module> res.append(brute_force(pr[pr.columns[1:]], bad_samples_fraction=0.5)) File "F:/FX/Python/meta_modeling_Viborka.py", line 128, in brute_force X = X[X.index >= START_DATE] File "C:\Program Files\Python38\lib\site-packages\pandas\core\ops\common.py", line 81, in new_method return method(self, other) File "C:\Program Files\Python38\lib\site-packages\pandas\core\arraylike.py", line 60, in __ge__ return self._cmp_method(other, operator.ge) File "C:\Program Files\Python38\lib\site-packages\pandas\core\indexes\range.py", line 964, in _cmp_method return super()._cmp_method(other, op) File "C:\Program Files\Python38\lib\site-packages\pandas\core\indexes\base.py", line 6783, in _cmp_method result = ops.comparison_op(self._values, other, op) File "C:\Program Files\Python38\lib\site-packages\pandas\core\ops\array_ops.py", line 296, in comparison_op res_values = _na_arithmetic_op(lvalues, rvalues, op, is_cmp=True) File "C:\Program Files\Python38\lib\site-packages\pandas\core\ops\array_ops.py", line 171, in _na_arithmetic_op result = func(left, right) File "C:\Program Files\Python38\lib\site-packages\pandas\core\computation\expressions.py", line 239, in evaluate return _evaluate(op, op_str, a, b) # type: ignore[misc] File "C:\Program Files\Python38\lib\site-packages\pandas\core\computation\expressions.py", line 70, in _evaluate_standard return op(a, b) TypeError: '>=' not supported between instances of 'int' and 'datetime.datetime' >>>我想测试一下,但做不到 :(
类型错误:"int "和 "datetime.datetime "实例之间不支持">="。
我注意到的第一件事是你的数据帧索引不对,应该是 datetime,即时间列应该被索引
我注意到的第一件事是你的数据帧索引不对,应该是 datetime,即时间列应该有索引
idex值(0,1,2)如何与日历日期进行比较?