Python pandas创建具有可变输入数的数据帧

2024-09-28 22:24:41 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试创建具有可变列数的pandas dataframe。在

import pandas as pd
import numpy as np
MonthNumber = np.array([1,1,2,4,5,6,5])
Type1 = np.array(['A','B','C',A','A','B','C'])
Type2 = np.array([1,1,0,1,0,0,1])
Data = np.array([1.1,3,.52,34,15,45,34])
Data2 = Data * 1.1
Data3 = Data * 2 

def variableDataFrame(*args):
    df = pd.DataFrame({'MonthNumber':args1, 'Data':args2})
    print df.columns

因此,对函数的调用如下所示:

^{pr2}$

Tags: importnumpydataframepandasdfdataasnp
1条回答
网友
1楼 · 发布于 2024-09-28 22:24:41

为了完成您的代码并使其适用于您提供的内容,我将执行以下操作:

def variableDataFrame(*args):
    """I'm assuming the last argument is the data argument.
    Everything else gets put into an index.
    If you want these as columns instead of rows,
    put a ".T" at the end of the return argument."""

    return pd.DataFrame(args[-1], index=pd.MultiIndex.from_arrays(args[:-1]))

    # Optional return if you want columns instead
    # return pd.DataFrame(args[-1], index=pd.MultiIndex.from_arrays(args[:-1])).T

但我会给你一个很大的警告!!!在

您正在为pd.DataFrame创建替换项。你/我所做的只是重新洗牌和混淆论点。为了使其正常工作,您需要知道在哪个插槽中有什么,这与您首先使用pd.DataFrame时需要知道的相同。在

我希望这对我有帮助。在

相关问题 更多 >