回答編集履歴
2
タイポを修正
answer
CHANGED
@@ -31,4 +31,4 @@
|
|
31
31
|
とした後に、``T``で転置してためかと思います。
|
32
32
|
|
33
33
|
``Pandas`` では列毎に``型``が決まるため、上記のように記述すると、
|
34
|
-
``datetime64``型のデータと``int64``型のデータが**同じ列**にいる為に、型
|
34
|
+
``datetime64``型のデータと``int64``型のデータが**同じ列**にいる為に、型が``object``型に変換されてしまいます。ところが4行目(この時点では4列目)だけは``int64``型のデータが存在しない為、この行だけ``datetime64``型のままでデータが保存されることとなります。
|
1
補足を追加
answer
CHANGED
@@ -16,4 +16,19 @@
|
|
16
16
|
df = pd.DataFrame({'date':pd.Series(dates), 'price':pd.Series(prices)})
|
17
17
|
df = df.set_index("date")
|
18
18
|
print(df)
|
19
|
-
```
|
19
|
+
```
|
20
|
+
|
21
|
+
---
|
22
|
+
**【補足】**
|
23
|
+
|
24
|
+
質問のように、4行目のみ型が違う原因は、``DataFrame`` 作成の際に
|
25
|
+
一度
|
26
|
+
|
27
|
+
```Python
|
28
|
+
df = pd.DataFrame([dates, prices], ['date', 'price'])
|
29
|
+
```
|
30
|
+
|
31
|
+
とした後に、``T``で転置してためかと思います。
|
32
|
+
|
33
|
+
``Pandas`` では列毎に``型``が決まるため、上記のように記述すると、
|
34
|
+
``datetime64``型のデータと``int64``型のデータが**同じ列**にいる為に、型を``object``型に変換されてしまいます。ところが4行目(この時点では4列目)だけは``int64``型のデータが存在しない為、この行だけ``datetime64``型のままでデータが保存されることとなります。
|