#######这部分代码放到for循环外#######
# Defining the grid size
jz_x_min, jz_x_max = -1000, 1000
jz_y_min, jz_y_max = -1000, 1000
jz_x_splits = 5 # Number of divisions along x-axis
jz_y_splits = 5 # Number of divisions along y-axis
# Computing bin edges
jz_x_bins = np.linspace(jz_x_min, jz_x_max, jz_x_splits + 1)
jz_y_bins = np.linspace(jz_y_min, jz_y_max, jz_y_splits + 1)
# Creating a dictionary to store grid cell counts
jz_grid_data = {(i, j): 0 for i in range(jz_x_splits) for j in range(jz_y_splits)}
##########直到此处##########
# 伪代码写for循环,不要复制!!!要直接复制for循环里面的内容!!!!
for x in xxx:
print(cell_x,cell_y) # 伪代码不复制!!!!
######注意从此部分开始要复制!!!!放在print(cell_x,cell_y)下面#######
if cell_id not in [0,1,2]:
# cell_x = 100
# cell_y = 300
# Finding the correct bin index
jz_x_idx = np.digitize(cell_x, jz_x_bins) - 1
jz_y_idx = np.digitize(cell_y, jz_y_bins) - 1
# Ensuring indices are within bounds
jz_x_idx = min(max(jz_x_idx, 0), jz_x_splits - 1)
jz_y_idx = min(max(jz_y_idx, 0), jz_y_splits - 1)
# Updating grid cell count
jz_grid_data[(jz_x_idx, jz_y_idx)] += 1
#######直到这里########
####这段代码放到和for循环同级!!!!!####
# Creating pandas DataFrame for the grid
jz_grid_df = pd.DataFrame(
[[jz_grid_data[(j, i)] for j in range(jz_x_splits)] for i in reversed(range(jz_y_splits))],
index=[f"y_bin_{i}" for i in range(jz_y_splits)],
columns=[f"x_bin_{j}" for j in range(jz_x_splits)],
)
# Displaying the resulting DataFrame
print(jz_grid_df)
测试代码hhhhhh
于 2025-03-19 15:57:18 首次发布