質問編集履歴

1

質問内容を改善。

2020/11/29 12:41

投稿

kei_124981
kei_124981

スコア11

test CHANGED
File without changes
test CHANGED
@@ -1,10 +1,10 @@
1
- 以下のようなcsvがあるのですが、それぞれスタート時刻がバラバラなので、Dataframe同士で計算させる際に数値がずれてしまいます。
1
+ 以下のようなcsvがあるのですが、それぞれのcsvのスタート時刻がバラバラなので、2つのCSV同士で計算させる際にがずれてしまいます。
2
2
 
3
3
 
4
4
 
5
- 読み込む際に行を飛ばして読み込んでもいいですが、同じDatatimeの数字同士を行ごとに計算させる方法はないでしょうか?
5
+ 2つcsvのtime列が一致するもの同士計算させる方法はないでしょうか?
6
6
 
7
- 2020-11-07 14:33:35までで一致するもの同士で計算させたいです。
7
+ 2020-11-07 14:33:35までの小数点を除いた時刻で一致するもの同士で計算させたいです。
8
8
 
9
9
 
10
10
 
@@ -46,7 +46,7 @@
46
46
 
47
47
 
48
48
 
49
- [読み込んだDataframe1]
49
+ [読み込んだDataframe2]
50
50
 
51
51
  time price
52
52
 
@@ -74,7 +74,7 @@
74
74
 
75
75
 
76
76
 
77
- [現段階]
77
+ [csvの読み込みと計算]
78
78
 
79
79
  ```Python
80
80
 
@@ -96,6 +96,8 @@
96
96
 
97
97
  data = pd.read_csv(input_dir + input_filename, encoding=input_encoding, usecols = [1, 2])
98
98
 
99
+
100
+
99
101
  price = pd.read_csv(input_dir + input_filename, encoding=input_encoding, usecols = [2])
100
102
 
101
103
 
@@ -112,12 +114,46 @@
112
114
 
113
115
  data2 = pd.read_csv(input_dir2 + input_filename2, encoding=input_encoding2, usecols = [1, 2])
114
116
 
117
+
118
+
115
119
  price2 = pd.read_csv(input_dir2 + input_filename2, encoding=input_encoding2, usecols = [2])
116
120
 
117
121
 
118
122
 
119
- #計算←これだと0目から順に計算するため時刻がずれてしまう。
123
+ #行いたい計算
120
124
 
121
125
  print((price / price2)*100)
122
126
 
123
127
  ```
128
+
129
+
130
+
131
+ [上記の計算で出力されたもの]
132
+
133
+ 0行目が、dataframe1の「2020-11-07 14:33:35.604666 」と
134
+
135
+ dataframe2の「2020-11-07 14:33:36.304415」を計算しているので2秒ずれた状態で計算してしまっている。
136
+
137
+ price
138
+
139
+ 0 100.829177
140
+
141
+ 1 100.835781
142
+
143
+ 2 100.841451
144
+
145
+ 3 100.845594
146
+
147
+ 4 100.838991
148
+
149
+ ... ...
150
+
151
+ 20185 NaN
152
+
153
+ 20186 NaN
154
+
155
+ 20187 NaN
156
+
157
+ 20188 NaN
158
+
159
+ 20189 NaN