回答編集履歴

1

コメントへの回答で、プログラム例を追加

2021/01/03 13:30

投稿

ppaul
ppaul

スコア24670

test CHANGED
@@ -1,6 +1,6 @@
1
1
  インデクスを指定してdropすれば普通に削除できています。
2
2
 
3
- 胃アkが参考になるでしょうか。
3
+ 以下が参考になるでしょうか。
4
4
 
5
5
 
6
6
 
@@ -61,3 +61,47 @@
61
61
  dtype: float64
62
62
 
63
63
  ```
64
+
65
+ 元のQuitaのように日付をindexとしている場合は以下です。
66
+
67
+
68
+
69
+ ```python
70
+
71
+ import numpy as np
72
+
73
+ import pandas as pd
74
+
75
+ rand = np.random.RandomState(seed=20)
76
+
77
+ idx = pd.date_range(start='2020-12-25', end='2020-12-31', freq='D')
78
+
79
+ x = np.arange(len(idx))
80
+
81
+ y = 500000 \
82
+
83
+ + x ** 2 \
84
+
85
+ + np.sin(x/4) * 100000 \
86
+
87
+ + rand.randn(len(x)) * 100000 \
88
+
89
+ + rand.gamma(0.01, 1000000, len(x))
90
+
91
+
92
+
93
+ ts = pd.Series(y, index=idx)
94
+
95
+ print(ts)
96
+
97
+ ts.drop(ts.index[5], inplace=True)
98
+
99
+ print(ts)
100
+
101
+ ```
102
+
103
+ 削除したい行が何行目かはわかっているという前提です。
104
+
105
+ また、削除したい行が複数ある場合は、行が変化しないように下から順に削除してください。
106
+
107
+ dorpは遅い処理ですので、削除したい行が多い場合は、別に作ったDataFrameに必要な部分だけをコピーしたほうが高速になります。