我正在努力学习Python,并在继续之前浏览Git Hub上的一些代码。我只是想知道.N在“tm.N=1000”的行上做了什么,以及它与代码末尾的关系。在
import matplotlib.pyplot as plt
import random
import pandas.util.testing as tm
tm.N = 1000
df = tm.makeTimeDataFrame()
import string
foo = list(string.letters[:5]) * 200
df['indic'] = list(string.letters[:5]) * 200
random.shuffle(foo)
df['indic2'] = foo
df.boxplot(by=['indic', 'indic2'], fontsize=8, rot=90)
plt.show()
来源:https://github.com/pydata/pandas/blob/master/pandas/util/testing.py
N是pandas.util.测试库(作为
tm
导入)。它用于在该库中定义的一些函数中,包括在getTimeSeriesData
中调用的makeTimeSeries
函数,该函数又在用df = tm.makeTimeDataFrame()
调用的makeTimeDataFrame
函数中调用上一行
import pandas.util.testing as tm
导入模块pandas.util.testing
,为了方便起见,给它命名tm
。因此,tm
之后引用这个模块,因此tm.N
引用模块中名为“N
”的对象(无论是什么)。在N
是testing.py
模块中的一个全局变量,用于测试数组和其他东西。默认值为30。E、 g在您发布的代码中,它的用法很差,因为
^{pr2}$makeTimeDataFrame
可以使用一个nper
参数馈送,如果没有提供nper
,那么该参数最终会被N
取代。这是正确的用法,不会让您感到困惑:相关问题 更多 >
编程相关推荐