df4 = pd.read_excel(
io='model.xls',
skiprows=lambda x: x > 0 and random() > 0.1
)
skiprows=lambda x: x > 0 and random() > 0.1不理解,为什么它能够达到读取 Excel 文件的表头和其中10%的数据的目的?,什么传给了匿名函数的参数x?
我的理解不是很透彻,如果问的有问题,也欢迎指正。谢谢解答!
通过匿名函数指定跳过索引大于0的行,即只取首行,90%的数据被随机过滤掉,参数x为行索引。参考一下这里的解释:
https://www.cnblogs.com/gczr/p/11349126.html
random() 是取随机数啊,没有指定范围的时候,取0至1之间的浮点数,随机数大于0.1,不就是90%的概率了么,至于x,是行号
给你个参考代码,从10万个数据中,随机获取1%左右的数据,生效的部分就是 random.random()<0.01
import random
a = [n for n in [n for n in range(100000)] if random.random()<0.01]
print(len(a))
有没有大佬解答一下123