DataFrame转为list
import pandas as pd
import numpy as np
corpus = pd.read_csv('corpus.csv') # 得到 DataFrame
corpus = np.array(corpus) # 转换为 ndarray [[1], [2], [3]]
corpus = corpus.reshape(1, len(corpus)).tolist() # 转换成 List [[1, 2, 3]]
corpus = corpus[0] # 取第一个元素得到最终结果 [1, 2, 3]
另外一种直接点的方法:
corpus = pd.read_csv('corpus.csv')
corpus = corpus.values.tolist()
在本次keras时间序列中设置:
def windowed_dataset(series,window_size,batch_size):
dataset = tf.data.Dataset.from_tensor_slices(series)
dataset = dataset.window(window_size+1,shift = 1,drop_remainder=True)
dataset = dataset.flat_map(lambda window:window.batch(window_size+1))
dataset = dataset.map(lambda window:(window[:-1],window[-1:]))
dataset = dataset.batch(batch_size).prefetch(1)
return dataset
corpus = pd.read_csv(r"lorenz.csv")
corpus = corpus.values.tolist()
data = windowed_dataset(corpus[:100],4,1) # 此时 data已经变成了批数据了 第一维度是输入特征 输出是标签值
for x,y in data:
print("x=",x)
print("y=",y)