Comment répéter les Pandas bloc de données?
C'est mon bloc de données qui doit être répété 5 fois:
>>> x = pd.DataFrame({'a':1,'b':2},index = range(1))
>>> x
a b
0 1 2
Je veux avoir le résultat de ce genre:
>>> x.append(x).append(x).append(x)
a b
0 1 2
0 1 2
0 1 2
0 1 2
Mais il doit y avoir un moyen plus intelligent que de les maintenir en ajoutant.. en Fait la trame de données Im travailler sur doit être répété 50 fois..
Je n'ai pas trouvé quelque chose de pratique, y compris ceux qui, comme np.repeat
---- il est tout simplement ne fonctionne pas sur le bloc de données.
Pourrait aider quelqu'un?
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser le
concat
fonction:Si vous ne voulez répéter les valeurs et pas sur l'index, vous pouvez le faire:
Je pense que c'est plus propre, plus rapide à utiliser
lci
aujourd'hui:Plus généralement, vous pouvez utiliser
mosaïque
ourepeat
avecarange
:Remarque: Cela fonctionne avec les non-entier indexé DataFrames (et la Série).
Je voudrais généralement pas de répétition et/ou d'ajouter, à moins que votre problème le rend nécessaire - il est très inefficace et généralement vient de ne pas comprendre la bonne façon d'attaquer le problème.
Je ne sais pas exactement à vos cas d'utilisation, mais si vous avez vos valeurs stockées en tant que
va faire le travail. Vous désirez peut-être mieux expliquer ce que vous voulez réaliser?
Ajouter devrait travailler trop:
Essayez d'utiliser
numpy.repeat
: