pandas
Meta: wytyczne dotyczące dokumentacji
Szukaj…
Uwagi
Ten meta post jest podobny do wersji Pythona http://stackoverflow.com/documentation/python/394/meta-documentation-guidelines#t=201607240058406359521 .
Wprowadź sugestie dotyczące edycji i skomentuj je (zamiast poprawnych komentarzy), abyśmy mogli rozwinąć / powtórzyć te sugestie :)
Wyświetlanie fragmentów kodu i danych wyjściowych
Można użyć dwóch popularnych opcji:
Notacja ipython:
In [11]: df = pd.DataFrame([[1, 2], [3, 4]])
In [12]: df
Out[12]:
0 1
0 1 2
1 3 4
Alternatywnie (jest to popularne w dokumentacji Pythona) i bardziej zwięźle:
df.columns # Out: RangeIndex(start=0, stop=2, step=1)
df[0]
# Out:
# 0 1
# 1 3
# Name: 0, dtype: int64
for col in df:
print(col)
# prints:
# 0
# 1
Zasadniczo jest to lepsze w przypadku mniejszych przykładów.
Uwaga: Rozróżnienie między wydrukiem a wydrukiem. ipython wyjaśnia to (wydruki pojawiają się przed zwróceniem danych wyjściowych):
In [21]: [print(col) for col in df]
0
1
Out[21]: [None, None]
styl
Użyj biblioteki pand jako pd
, można to założyć (import nie musi być w każdym przykładzie)
import pandas as pd
- 4 wcięcia w przestrzeni
- kwargs nie powinien używać spacji
f(a=1)
- Limit 80 znaków (zdecydowanie zaleca się dopasowanie całej linii w renderowanym fragmencie kodu)
Obsługa wersji pand
Większość przykładów będzie działać w wielu wersjach, jeśli używasz „nowej” funkcji, powinieneś wspomnieć, kiedy została wprowadzona.
Przykład: sort_values
.
drukuj wyciągi
Przez większość czasu należy unikać drukowania, ponieważ może to rozpraszać uwagę (zaleca się Out).
To jest:
a
# Out: 1
jest zawsze lepszy niż
print(a)
# prints: 1
Preferuj obsługę python 2 i 3:
print(x) # yes! (works same in python 2 and 3)
print x # no! (python 2 only)
print(x, y) # no! (works differently in python 2 and 3)