J'ai 3 dataframes J'essaie de fusionner en pandas. L'un est de 20 colonnes, les deux autres ont 2 colonnes chacune. Ils sont organisés en tant que tels:Pandas fusionner erreur df
eth_price.head(n=3)
Out[6]:
time eth_price
0 8/28/17 16:19 344.021
2 8/28/17 16:24 343.833
3 8/28/17 16:29 343.643
btc_price.head(n=3)
Out[7]:
time btc_price
0 2017-08-27 22:50:00 4,389.6113
1 2017-08-27 22:51:00 4,389.0850
2 2017-08-27 22:52:00 4,388.8625
block_data.head(n=3)
Out[8]:
time block_size difficulty estimated_btc_sent \
0 2017-08-30 22:55:03 165261989 888171856257 22433058065308
5 2017-08-30 23:02:03 165261989 888171856257 22433058065308
12 2017-08-30 23:09:03 164262692 888171856257 22210602766312
estimated_transaction_volume_usd hash_rate market_price_usd \
0 1.030796e+09 7.417412e+09 4594.98
5 1.030796e+09 7.417412e+09 4594.98
12 1.020574e+09 7.373261e+09 4594.98
miners_revenue_btc miners_revenue_usd minutes_between_blocks \
0 2495 11467926.77 7.98
5 2495 11467926.77 7.98
12 2478 11388475.85 8.01
n_blocks_mined n_blocks_total n_btc_mined n_tx nextretarget \
0 168 482713 210000000000 273392 483839
5 168 482713 210000000000 273392 483839
12 167 482713 208750000000 271638 483839
total_btc_sent total_fees_btc totalbtc trade_volume_btc \
0 164688219250248 39574691936 1653391250000000 44110.58
5 164688219250248 39574691936 1653391250000000 44110.58
12 163455939539341 39095614135 1653391250000000 44110.58
trade_volume_usd
0 2.026876e+08
5 2.026876e+08
12 2.026876e+08
Je suis en train de fusionner en utilisant all_data = pd.merge(btc_price, eth_price, block_data, on = 'time', how = 'outer')
mais quand je le fais-je obtenir l'erreur suivante:
File "", line 1, in all_data = pd.merge(btc_price, eth_price, block_data, on = 'time', how = 'outer')
TypeError: merge() got multiple values for argument 'how'
Qu'est-ce que cela signifie et comment puis-je résoudre ce problème?
Le résultat final doit être une trame de données de 22 colonnes, incluant toutes les lignes de tous les 3 df. Je vais ensuite laisser tomber les lignes avec des valeurs manquantes.
EDIT: si vous regardez les horodateurs, les 2 premiers df surviennent à la minute tandis que le troisième se produit à 03 secondes ... est-il un moyen de fixer cela? J'ai un script qui tire ces 3 fichiers de JSON chaque minute et je suis en train d'aligner le 3 df en conséquence
Incluez le message d'erreur _complete_ dans votre question. – DyZ
@DYZ ok je l'ai fait, mais c'était le message d'erreur complet, tout ce qui manquait était le retraçage. – zsad512
Jetez un oeil à cela pour avoir une idée comment réparer la colonne datetime https://stackoverflow.com/questions/38067704/how-to-change-the-datetime-format-in-pandas et cela pour le tutoriel sur la fusion et la jonction dataframes https://pythonprogramming.net/join-merge-data-analysis-python-pandas-tutorial/ – Colonder