我偶尔会编写一次代码,目前我非常基础。也许这是一个愚蠢的问题,但这使我陷入了太多困境。
背景
我有一个函数(get_profiles
),它沿着一条样带线(长100m)每5m绘制一个点,并提取高地坐标(从一个地标中)。
参数为:
一条样条线的输出是一个图片中的数据帧,这正是我所期望的,我喜欢它!
但是,最大的问题是,当我在transect_ids
上迭代函数时(transect_files具有10个匀称的LineStrings),如下所示:
tr_list = np.arange(1,transect_file.shape[0]-1)
geodb_transects= []
for i in tr_list:
temp=get_profiles(dsm,transect_file,i,5)
geodb_transects.append(temp)
我得到一个清单。这可能是错误,但是我不知道该怎么做。
type(geodb_transects)
output:list
而且,更糟糕的是,每次新的迭代开始时,我都会获得标头(distance, z, tr_id, date
)。
如何获得一个干净的熊猫数据帧,就像1次迭代(20行)的输出一样,但是所有20行的tr_id块都对齐并且没有标题?
答案 0 :(得分:1)
如果您的输出是DataFrame
,那么您只是想将增量DataFrame连接到一些不断增长的DataFrame中。
效率不是最高,但是类似
import pandas
df = pandas.DataFrame()
for i in range(7) :
df = df.concat( df_ret_func(i))
如果您有一个元素列表,它们都是相同格式的记录,并且可以转换为DataFrame的行,那么您可能也对from_records
function感兴趣。