Вот полный код для вас
import pandas as pd
c1 = pd.Series(["A", "B", "A", "C","A"])
c2 = pd.Series([4.22,4.32,9.22,9.32,10.1])
c3 = pd.Series([0.00,4.22,4.32,9.22,9.32])
c4 = pd.Series([4.23,9.22,9.23,10.1,10.1])
c5 = pd.Series([])
Data ={'name':c1, 'time':c2, 'previousTime':c3, 'nextTime': c4, "sum_": c5} # Define Data
table1 = pd.DataFrame(Data) # Create DataFrame
c1 = pd.Series(["A","B","A","C","A","A","A"])
c2 = pd.Series([4.11,4.32,4.22,9.32,4.5,9.5,9.6])
c3 = pd.Series([2,1,0,4,1,8,4])
Data ={'name':c1, 'time':c2, 'value':c3} # Define Data
table2 = pd.DataFrame(Data) # Create DataFrame
for idx, row in table1.iterrows():
counter = 0
for _, elm_row in table2.iterrows():
if row.previousTime <= elm_row.time <= row.nextTime:
counter += 1
table1.sum_[idx] = int(counter)
=============================================== ====================
Возможно, вам придется сделать некоторые настройки, но это будет работать
import pyodbc
import pandas as pd
con = pyodbc.connect("G1.db")
sql = "SELECT Name,Time,PreviousValue,NextValue from table1 GROUP by SourceName,Time"
table1 = pd.read_sql(sql, con)
sql_ = "SELECT Time from table2"
table2 = pd.read_sql(sql_, con)
result = []
for idx, row in table1.iterrows():
counter = 0
for _, elm_row in table2.iterrows():
if row.previousTime <= elm_row.time <= row.nextTime:
counter += 1
result.append(counter)
temp_fr = pd.DataFrame({"sum_": result})
table1.join(temp_fr)