我目前正在研究从pdf导入的熊猫df。此数据框仅包含2列和大约15000行。我需要对第一行的df升序排序,然后将此行的较低值减去同一行的所有其他值。第一个问题是我无法正确地排序我的数据帧。。。 当然,我在网上和stackoverflow上搜索答案,当然我也阅读了pandas关于我正在使用的函数的信息。我的代码是:
import pandas as pd
import numpy as np
#import data
dataframe=pd.read_csv('time_and_followers_2.csv', index_col=None)
dataframe.timestamps = dataframe.timestamps.astype(int)
#sort data by first column and get informations needed
sorted_df=dataframe.sort_values(by=['timestamps'])
init_time=sorted_df.at[0,'timestamps']
total_rows = sorted_df.shape[0]
#retrieve initial time to all first column data
sorted_df['timestamps']= sorted_df['timestamps']-init_time
sorted_df.loc[-1] = [init_time,total_rows] # adding a row
sorted_df.to_csv('time_and_followers_2_sorted.csv', header=False, index=False)
下面是csv文件的第一行:
^{pr2}$任何帮助都将不胜感激。。。在
我设法解决了我的问题!看来df的分类很好。问题是,当我试图访问数据集的第一个元素时,将这个元素减去同一列的所有其他元素:由于索引没有改变,我访问的是另一个元素而不是最小的元素。一个简单的
reset_index()
排序后把我救了出来。在相关问题 更多 >
编程相关推荐