我试图分别对25列进行排序,然后从每列中打印出前5行。我以为我需要为此使用一个循环,但似乎无法弄清楚。
我目前有:
df.sort_values(by=['A'], ascending=False)
df.head()
df.sort_values(by=['B'], ascending=False)
df.head()
df.sort_values(by=['C'], ascending=False)
df.head() ...
目标是在没有25行代码的情况下在许多列中重复此操作。
答案 0 :(得分:0)
尝试以下操作:
import numpy as np
df = pd.DataFrame(np.sort(df.values, axis=0), index=df.index, columns=df.columns)
print(df.iloc[:5])
答案 1 :(得分:0)
如果您想单独打印每列,这应该可以工作
df.apply(lambda x: print(x.sort_values(ascending=False).head(5)), axis=0)
答案 2 :(得分:0)
回答了我自己的问题...最终成功了。也许有更简洁的方法可以做到这一点。
image: rocker/rstudio
test:
script:
- R -e 'install.packages(c("devtools", "testthat"))'
- R CMD build . --no-build-vignettes --no-manual
- PKG_FILE_NAME=$(ls -1t *.tar.gz | head -n 1)
- R CMD check "${PKG_FILE_NAME}" --no-build-vignettes --no-manual
- R -e 'devtools::test()'