在 Pandas 中,如何检查 DataFrame 的稀疏程度?有可用的功能吗,还是我需要自己编写?
现在,我有这个:
df = pd.DataFrame({'a':[1,0,1,1,3], 'b':[0,0,0,0,1], 'c':[4,0,0,0,0], 'd':[0,0,3,0,0]})
Run Code Online (Sandbox Code Playgroud)
a b c d
0 1 0 4 0
1 0 0 0 0
2 1 0 0 3
3 1 0 0 0
4 3 1 0 0
Run Code Online (Sandbox Code Playgroud)
sparsity = sum((df == 0).astype(int).sum())/df.size
Run Code Online (Sandbox Code Playgroud)
将零的数量除以元素总数,在本例中为 0.65。
想知道是否有更好的方法来做到这一点。如果有任何函数可以提供有关稀疏性的更多信息(例如 NaN,任何其他突出的数字,例如 -1)。
任何人都可以帮助我理解以下代码: -
int r, countIt(int n) {
while (r += " 2 "[n % 10] & 3, n /= 10);
return r;
}
Run Code Online (Sandbox Code Playgroud)
我在codefights.com的挑战中找到了这段代码,https://codefights.com/challenge/v5Zg8trjoun3PTxrZ/solutions/Aj3ppbhSShixt4nBi
这是计算数字中孔数的解决方案.
例如
1111 = 0
0000 = 4
1234 = 0
8888 = 8
Run Code Online (Sandbox Code Playgroud)
我无法理解以下内容:
1.此代码的逻辑
2.逗号(,)运算符用于函数的返回数据类型
3.在字符串后使用[]运算符.
实际上整个代码.