我正在迭代DataFrame
,评估每一行,然后使用DataFrame
方法将其粘贴到另一个concat()
。但是,接收DataFrame
仍为空。
import pandas as pd
empty = DataFrame(columns=('col1', 'col2'))
d = {'col1' : Series([1, 2, 3]),
'col2' : Series([3, 4, 5])
}
some_data = DataFrame(d)
print empty
print some_data
print 'concat should happen below'
for index, row in some_data.iterrows():
pd.concat([empty, DataFrame(row)])
print empty # should contain 3 rows of data
输出:
Empty DataFrame
Columns: [col1, col2]
Index: []
col1 col2
0 1 3
1 2 4
2 3 5
concat should happen below
Empty DataFrame
Columns: [col1, col2]
Index: []
答案 0 :(得分:2)
如果您想要存储值,则需要更新empty
:empty = pd.concat([empty, DataFrame(row)])
您也可以连接整个DataFrame
,试试这个print pd.concat([ empty,some_data])
如果要过滤行,可以尝试:
def f(r):
#check the row here
return True #returns True or False if include/exclude the row
print some_data.groupby(some_data.index).filter(f)