Jupyter Notebook 中 Out 的含义及用法详解
Jupyter Notebook 中 Out 的含义及用法详解
在 Jupyter Notebook 中,Out[] 是指代码单元格(Cell)执行后的输出结果。每个代码单元格运行后,其输出结果会被自动赋予一个递增的 Out[] 标签,方便后续引用和查看。
例如,执行 print('Hello World!') 后,输出区域会显示 Out[1]: 'Hello World!',其中 Out[1] 表示这是第一个代码单元格的输出结果。
代码示例解析
以下代码示例演示了如何使用 yield 生成训练数据:
def gen_train_data(df, sequence_length, columns):
data = df[columns].values
num_elements = data.shape[0]
# -1 and +1 because of Python indexing
for start, stop in zip(range(0, num_elements-(sequence_length-1)), range(sequence_length, num_elements+1)):
yield data[start:stop, :]
代码解释:
gen_train_data函数: 用于生成训练数据,接受三个参数:df: 一个 Pandas DataFrame,包含所有数据。sequence_length: 序列长度,表示每个训练样本包含的时间步数。columns: 一个列表,指定 DataFrame 中用于训练的列名。
data = df[columns].values: 从 DataFrame 中提取指定列的数据,并转换为 NumPy 数组。num_elements = data.shape[0]: 获取数据集中样本的数量。for循环: 迭代生成训练数据。zip(range(0, num_elements-(sequence_length-1)), range(sequence_length, num_elements+1))**: 生成滑动窗口的起始和结束索引,确保每个训练样本包含sequence_length个时间步。yield data[start:stop, :]: 使用yield关键字返回一个生成器对象,每次迭代返回一个训练样本,该样本包含从start到stop行的所有列数据。
yield 关键字的作用:
- 将函数变成一个生成器。
- 每次调用生成器时,会从上次离开的位置继续执行,直到遇到
yield语句,返回当前的值并暂停执行。 - 使用生成器可以避免一次性生成所有数据,节省内存空间,尤其适用于处理大型数据集。
原文地址: https://www.cveoy.top/t/topic/jPdu 著作权归作者所有。请勿转载和采集!