python - 根据多个条件将特定列的行条目附加到空数据框
问题描述
我有一个名为 dictoftickersdf 的数据框字典,看起来像这样。
我将使用字典中的 for 循环遍历每一帧。所以假设每一个都被称为tickersdf。
Country Type Ticker
1 US Pub AAPL
2 US Priv etc
3 GER Pub etc
4 HK Pub etc
和
Country Type Ticker
1 US Pub GE
2 US Priv etc
3 GER Pub etc
4 HK Pub etc
5 US Pub MSFT
etc..
我有一个空的数据框,df = pd.DataFrame()
我正在对具有不同公司的各种tickersdf 运行for 循环。
我只想根据某些条件(类型 == Pub 和 Country == US)附加出现在列代码中的条目。
所以我希望最终的 df 看起来像这样
AAPL
GE
MSFT
...
到目前为止,我有这个,
df = pd.DataFrame()
for subdir, dirs, files in os.walk(r"/Users/xxx/Documents/"):
for file in files:
filepath = os.path.join(subdir, file)
print(filepath)
dictoftickersdf = pd.read_excel(filepath,sheet_name=None) #multiple sheets per file
for key, tickersdf in dictoftickersdf.items():
df = df.append(tickersdf.loc[(tickersdf['Country']=='US') & (tickersdf['Type']=='Pub'),'Ticker'])
但是数据框 df 出现空,我做错了什么?
更新:
我在最后添加了一个分配命令,它不再为空,但它仍然无法正常工作。现在df看起来像这样
1 1 5 ...
Ticker AAPL NaN NaN ...
Ticker NaN GE MSFT ...
Ticker ....................
解决方案
看起来“Public”在您的数据框中被缩短为“Pub”。尝试缩短该部分以查看是否可以修复它。
推荐阅读
- javascript - moment().toDate() 语言
- javascript - 在每个 webpack 模块中提供函数
- rust - 检索对树值的可变引用
- java - 如何使用java在mysql服务器中插入年份数据类型
- django - 如何在 Django 中创建用于匿名投票的应用程序?
- google-cardboard - 谷歌纸板头部运动跟踪不起作用
- python - 如何使一列变成索引,另一列变成标题,其中 3 列是数据?
- java - 流元素是否已排序?
- css - 如何在 Firefox 中加载 css 样式并解决内容安全策略:问题?
- .htaccess - 使用 htaccess 阻止所有人,除了来自特定推荐人的访问者