gpt4 book ai didi

python - Pandas:从系列创建 DataFrame

转载 作者:IT老高 更新时间:2023-10-28 22:02:46 30 4
gpt4 key购买 nike

我当前的代码如下所示 - 我正在导入一个 MAT 文件并尝试从其中的变量创建一个 DataFrame:

mat = loadmat(file_path)  # load mat-file
Variables = mat.keys() # identify variable names

df = pd.DataFrame # Initialise DataFrame

for name in Variables:

B = mat[name]
s = pd.Series (B[:,1])

所以在循环中,我可以创建一系列每个变量(它们是具有两列的数组 - 所以我需要的值在第 2 列)

我的问题是如何将系列附加到数据框中?我查看了文档,但似乎没有一个示例适合我正在尝试做的事情。

最佳答案

这里是如何创建一个DataFrame,其中每个系列都是一行

对于单个系列(导致单行 DataFrame):

series = pd.Series([1,2], index=['a','b'])
df = pd.DataFrame([series])

对于具有相同索引的多个系列:

cols = ['a','b']
list_of_series = [pd.Series([1,2],index=cols), pd.Series([3,4],index=cols)]
df = pd.DataFrame(list_of_series, columns=cols)

对于索引可能不同的多个系列:

list_of_series = [pd.Series([1,2],index=['a','b']), pd.Series([3,4],index=['a','c'])]
df = pd.concat(list_of_series, axis=1).transpose()

要创建一个每个系列都是一列的DataFrame,请查看其他人的答案。或者,可以创建一个 DataFrame,其中每个系列都是一行,如上所述,然后使用 df.transpose()。但是,如果列具有不同的数据类型,则后一种方法效率低。

关于python - Pandas:从系列创建 DataFrame,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23521511/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com