我有个df
| 日期_时间|Universe_Location_1| Universe_Location_2| Universe_Location_3| Universe_Location_4|
| - -----|- -----|- -----|- -----|- -----|
| 2023年6月20日11:00|土星||马尔斯|地球|
考虑到(i)土星每30分钟从一个位置移动到另一个位置(ii)火星每45分钟从一个位置移动到另一个位置(iii)地球每60分钟从一个位置移动到另一个位置
希望在输入所需时间时获得result_df
示例输入1 ------> 20.06.2023 11:30
result_df
| 日期_时间|Universe_Location_1| Universe_Location_2| Universe_Location_3| Universe_Location_4|
| - -----|- -----|- -----|- -----|- -----|
| 2023年06月20日11:30||土星|马尔斯|地球|
示例输入2 -> 20.06.2023 11:45
result_df
| 日期_时间|Universe_Location_1| Universe_Location_2| Universe_Location_3| Universe_Location_4|
| - -----|- -----|- -----|- -----|- -----|
| 2019 - 06 - 23 11:45||土星||火星地球|
示例输入3 ----> 20.06.2023 12:00
result_df
| 日期_时间|Universe_Location_1| Universe_Location_2| Universe_Location_3| Universe_Location_4|
| - -----|- -----|- -----|- -----|- -----|
| 2023年6月20日12:00|地球||土星|马尔斯|
请求给予我建议如何解决这个问题。
1条答案
按热度按时间46qrfjad1#
您可以使用时间差和模将每个行星的位置建模为lambda函数:
每个λ中的30、45和60代表行星到达下一个位置所需的分钟数。+2 / +3模拟行星的初始起始位置。
注意行星位置的索引是从零开始的。如果你想使用你符号,只需每次加1。