python - Python,我如何将同一列 numpy 中的两个值相加并在该特定列 numpy 上迭代添加函数
问题描述
我正在处理一些 python binance 数据,并且遇到了问题。我想在单列上做简单的数学运算,并在同一列上迭代数学。我正在使用的数据是来自币安提要的数据量。
这是我的代码:
candles = client.get_historical_klines("BTCUSDT", Client.KLINE_INTERVAL_1HOUR, "1 day ago UTC")
candle_dataframe = df(candles)
candle_dataframe_date = candle_dataframe[0]
date_init = []
for time in candle_dataframe_date.unique():
readable = datetime.fromtimestamp(int(time/1000))
date_init.append(readable)
candle_dataframe.pop(0)
candle_dataframe.pop(11)
dataframe_final_date = df(date_init)
dataframe_final_date.columns = ['date']
final_dataframe = candle_dataframe.join(dataframe_final_date)
final_dataframe.set_index('date', inplace=True)
final_dataframe.columns = ['open', 'high', 'low', 'close', 'volume', 'close_time', 'asset_volume', 'trade_number', 'taker_buy_base', 'taker_buy_quote']
list_volume = final_dataframe.iloc[:, [4]]
np_array = list_volume.to_numpy()
arr = np_array.astype('float64')
np.transpose(arr)
#print(np.transpose(arr))
#example 1
b = np_array[::2]
a = np_array[1::2]
print(np.add(a, b))
#example two
#for i, values, values1 in np_array:
# values[0] += 1
# if i == values[1]:
# np.multiply(values, values1)
#result = np.add(a + b)
我希望,示例两种显示了我正在尝试做的事情。但是有没有办法控制 id 迭代,以便我从那里获得最后一卷和下一个并将它们相加,然后添加接下来的两个值等等?
在单列 id 上创建简单的数学似乎是不可能的,或者有没有办法通过它。
我只是认为必须复制列并使用冗余数据来实际执行数学运算是很愚蠢的。
解决方案
为什么要循环?这不应该工作吗?
arr = np.random.rand(10)
d = arr[:-1] + arr[1:]
推荐阅读
- css - 我如何为 javafx 表格列单元格应用 css
- fortran - 英特尔编译器返回“预期语句结束时找到 Format_element”
- javascript - 为什么 JS map() 返回 TypeError?
- dart - 渡槽和内存数据库
- django - 错误:无效命令“bdist_wheel”
- android - 当子元素展开/折叠时,Android RecyclerView 滚动到顶部
- java - 如何将这些 spring security xml 配置转换为 java 配置
- python-2.7 - 将值分配给组合框时出错(python 2.7)
- javascript - 用 JavaScript 构造 Json 表
- angularjs - Angular 1.6 ng-重复