sampleA = pd.concat([orderByUsersA['orders'],pd.Series(0,index=np.arange(visitors[visitors['group']=='A']['visitors'].sum() - len(orderByUsersA['orders'])), name='orders')],axis=0)
嗨,这个问题来自我的课堂演讲。
我的问题是,在串联时,在级数构造的第二个参数中,(0,(Zero表示什么。我尝试通过删除零来检查它的功能,它返回了一个未来的警告。。。
弃用警告:空系列的默认数据类型将为"object"而不是未来版本中的"float64"。指定数据类型明确地使此警告静音"quot"启动的入口点IPython内核。
参数0的作用以及可以给出的其他参数是什么?
我将简单地介绍np.arange
内部的部分,但本质上,您可以使用以下代码创建一个系列。
import pandas as pd
import numpy as np
pd.Series(0, index=np.arange(10), name='orders')
创建这样的系列使用位置(0
(和命名参数(index=np.arange(10)
,name='orders'
(的组合。
如果我们看一下Series类,它是一个有几个参数的类,并且所有参数都定义了默认值:
class pandas.Series(data=None, index=None, dtype=None, name=None, copy=False, fastpath=False)
因此,在创建对象的方式中,0
按位置分配给第一个预期的参数,即data
,然后按指定的参数名称确定index
和name
是什么,最后它为未指定的参数使用提供的默认值。
所以你的对象是用创建的
pd.Series(0, index=np.arange(10), name='orders')
相当于完全显式创建:
pd.Series(data=0, index=np.arange(10), name='orders', dtype=None,
copy=False, fastpath=False)
通常,您不会写出所有默认值,只会在参数与默认值不同、是没有默认值的参数,或者指定默认值有助于对代码进行自文档化时指定参数。
您也可以简单地在参数中指定dtype
:
class pandas.Series(data=None, index=None, dtype=None, name=None, copy=False, fastpath=False)
您可以这样指定:
Ciccio = pd.Series(dtype = 'object')
这是一系列字符串的情况(您也可以将"object"用于混合值,其他有效值为int64或float64或bool…(