質問するログイン新規登録

回答編集履歴

1

修正

2020/08/29 01:36

投稿

8524ba23
8524ba23

スコア38352

answer CHANGED
@@ -1,7 +1,43 @@
1
1
  欲しい結果は以下のようなものでしょうか。
2
+
2
3
  ```Python
3
4
  import pandas as pd
4
5
 
6
+ df1 = pd.DataFrame({'Date1':['2019-01-01','2019-01-02','2019-01-03'], 'value1':[1,2,3]})
7
+ df2 = pd.DataFrame({'Date2':['2019-01-01','2019-01-03'], 'value2':[10,30]})
8
+ df1['Date1'] = pd.to_datetime(df1['Date1'])
9
+ df2['Date2'] = pd.to_datetime(df2['Date2'])
10
+ print(df1)
11
+ # Date1 value1
12
+ #0 2019-01-01 1
13
+ #1 2019-01-02 2
14
+ #2 2019-01-03 3
15
+ print(df2)
16
+ # Date2 value2
17
+ #0 2019-01-01 10
18
+ #1 2019-01-03 30
19
+
20
+ # 両方に存在する日付のみ抽出
21
+ s = set(df1['Date1']) & set(df2['Date2'])
22
+
23
+ df1 = df1[df1['Date1'].isin(s)]
24
+ print(df1)
25
+ # Date1 value1
26
+ #0 2019-01-01 1
27
+ #2 2019-01-03 3
28
+
29
+ df2 = df2[df2['Date2'].isin(s)]
30
+ print(df2)
31
+ # Date2 value2
32
+ #0 2019-01-01 10
33
+ #1 2019-01-03 30
34
+ ```
35
+
36
+ 質問修正前の回答
37
+ -----
38
+ ```Python
39
+ import pandas as pd
40
+
5
41
  df = pd.DataFrame({'Date1':['2019-01-01','2019-01-03',''], 'Date2':['2019-01-01','2019-01-02','2019-01-03']})
6
42
  df['Date1'] = pd.to_datetime(df['Date1'])
7
43
  df['Date2'] = pd.to_datetime(df['Date2'])