获取Pandas DataFrame中包含非零列的前11行,可以使用以下代码:
import pandas as pd
# 创建一个示例DataFrame
data = {'A': [0, 1, 0, 0, 2, 0, 0, 0, 0, 0, 0],
'B': [0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0],
'C': [4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
'D': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}
df = pd.DataFrame(data)
# 获取非零列的前11行
non_zero_cols = df.loc[:, (df != 0).any(axis=0)].head(11)
print(non_zero_cols)
这段代码首先创建了一个示例的DataFrame,其中包含了4列(A、B、C、D)和11行的数据。然后,使用(df != 0).any(axis=0)
来判断每列中是否存在非零元素,得到一个布尔型的Series。接着,使用df.loc[:, (df != 0).any(axis=0)]
来选择包含非零列的子DataFrame。最后,使用.head(11)
来获取前11行的数据。
这样就能够获取到Pandas DataFrame中包含非零列的前11行数据。
关于Pandas和DataFrame的更多信息,可以参考腾讯云的相关产品和文档:
领取专属 10元无门槛券
手把手带您无忧上云