Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/344.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
通过一个单独的映射表将数据类型加载到Python中,该映射表可以链接到主数据帧,以按列指定数据类型_Python_Pandas - Fatal编程技术网

通过一个单独的映射表将数据类型加载到Python中,该映射表可以链接到主数据帧,以按列指定数据类型

通过一个单独的映射表将数据类型加载到Python中,该映射表可以链接到主数据帧,以按列指定数据类型,python,pandas,Python,Pandas,虽然我对python还不熟悉,但我似乎已经掌握了它的窍门 但是,我将处理具有数百列的大型数据库,并且为每一列指定数据类型似乎是一个非常代码密集的练习,即必须专门写出列名并转换为特定的数据类型 问题:是否可以创建一个excel/CSV文件,将主数据库中的所有列放在一列中,并为每个列的数据类型创建一个单独的列。然后将其链接到主数据帧以基于辅助数据帧指定数据类型?i、 e.主数据库有100列,我加载了一个单独的表,表中的这100列位于行的下方,只有100行+一列具有数据类型(str、int等),可以对

虽然我对python还不熟悉,但我似乎已经掌握了它的窍门

但是,我将处理具有数百列的大型数据库,并且为每一列指定数据类型似乎是一个非常代码密集的练习,即必须专门写出列名并转换为特定的数据类型

问题:是否可以创建一个excel/CSV文件,将主数据库中的所有列放在一列中,并为每个列的数据类型创建一个单独的列。然后将其链接到主数据帧以基于辅助数据帧指定数据类型?i、 e.主数据库有100列,我加载了一个单独的表,表中的这100列位于行的下方,只有100行+一列具有数据类型(str、int等),可以对其进行索引,以便为主数据库中的每一行指定确切的数据类型


这类似于在excel中执行此操作的方式,即索引匹配一个单独的映射表

如果您有另一个具有正确数据类型的数据框,或者您可以创建一个{columnname:dtype}字典,那么您可以使用它来更改数据类型,如下所示

d={
“A”:np.random.choice(“abc.split(),5),
“B”:np.rand.rand(5),
“C”:np.arange(5)
}
df=pd.数据帧(d)
df2=df.astype(“O”)
打印(df2.D类型)
##使用其他数据帧的数据类型进行转换
打印(df2.astype(df.dtypes.dtypes)
##使用字典转换
打印(df2.aType({“B”:“f”,“C”:“i”}).dtypes)

如果您有另一个具有正确数据类型的数据帧,或者您可以创建一个{columnname:dtype}字典,那么您可以使用它来更改数据类型,如下所示

d={
“A”:np.random.choice(“abc.split(),5),
“B”:np.rand.rand(5),
“C”:np.arange(5)
}
df=pd.数据帧(d)
df2=df.astype(“O”)
打印(df2.D类型)
##使用其他数据帧的数据类型进行转换
打印(df2.astype(df.dtypes.dtypes)
##使用字典转换
打印(df2.aType({“B”:“f”,“C”:“i”}).dtypes)

为什么需要指定数据类型?通常,pandas在推断数据类型方面做得很好,尤其是从数据库导入数据时。您到底在做什么?为什么需要指定数据类型?通常,pandas在推断数据类型方面做得很好,尤其是从数据库导入数据时。你到底在干什么?