你需要DataFrame
构造函数与numpy.reshape:
import pandas as pd
import numpy as np
colnames = ['Title', 'Date', 'Abstract', 'ID', 'Volume']
data = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i' ,'j', 'k', 'l', 'm', 'n', 'o']
df = pd.DataFrame(np.array(data).reshape(-1, len(colnames)), columns=colnames)
print (df)
Title Date Abstract ID Volume
0 a b c d e
1 f g h i j
2 k l m n o
但如果缺少某些值,则可以使用unstack:
colnames = ['Title', 'Date', 'Abstract', 'ID', 'Volume']
data = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i' ,'j', 'k', 'l', 'm']
df = pd.DataFrame(data, columns=['col'])
df.index = [df.index // len(colnames), df.index % len(colnames)]
df = df['col'].unstack()
df.columns = colnames
print (df)
Title Date Abstract ID Volume
0 a b c d e
1 f g h i j
2 k l m None None