dataframe中根据某些条件得到特定的行或者特定的元素,如何找出这些行、元素所在的index,也就是行号。
_temp = {'job':['farmer', 'teacher', 'worker', 'acter', 'present'], 'money':[3000, 7000, 5000, 100000, 66666]}
df = pd.DataFrame(_temp)
print(df)
>> job money
>>0 farmer 3000
>>1 teacher 7000
>>2 worker 5000
>>3 acter 100000
>>4 present 66666
a = df[(df['money']>10000)].index.tolist()
print(a)
>>[3, 4]
流程如下:
确定一个条件–> df[‘money’]>10000)
确定满足条件的行–> df[(df[‘money’]>10000)]
确定这些行的index–> df[(df[‘money’]>10000)].index.tolist()
返回的是一个list
顺便说一下,设置某一列为dataframe的index
_temp = {'job':['farmer', 'teacher', 'worker', 'acter', 'present'], 'money':[3000, 7000, 5000, 100000, 66666]}
df = pd.DataFrame(_temp)
df = df.set_index('job')
print(df)
>> money
>>farmer 3000
>>teacher 7000
>>worker 5000
>>acter 100000
>>present 66666
-
AI_盲
-
小白白白又白cdllp
.
.
.
2019-03-15 18:51:39写于杭州
dataframe中根据某些条件得到特定的行或者特定的元素,如何找出这些行、元素所在的index,也就是行号。_temp = {'job':['farmer', 'teacher', 'worker', 'acter', 'present'], 'money':[3000, 7000, 5000, 100000, 66666]}df = pd.DataFrame(_temp)print(df...
df = pd.DataFrame({'BoolCol': [1, 2, 3, 3, 4],'attr': [22, 33, 22, 44, 66]},
index=[10,20,30,40,50])
print(df)
a = df[(df.BoolCol==3)&(df.attr==22)].index.tolist()
print(a)
df如下所示,以上通过选取“BoolCol”取值为3且“attr”取值为22的行,得到该行在df中的位置
注意:返回的位置为index列表,根据index的
np.where(optionList == (positionList[i]))
np.where(data['BTC'].index == datetime(2018,3, 10, 0, 0, 0, 0, pytz.utc))
Out[129]: (array([46452], dtype=int64),)
更多量化学习资源
扫上方二维码,关注公众账号 量化投资学院 ,获取下列免费...
最近在网上搜了许多关于pandas.DataFrame的操作说明,都是一些基础的操作,但是这些操作组合起来还是比较费时间去正确操作DataFrame,花了我挺长时间去调整BUG的。我在这里做一些总结,方便你我他。感兴趣的朋友们一起来看看吧。
一、创建DataFrame的简单操作:
1、根据字典创造:
In [1]: import pandas as pd
In [3]: aa={'one':[1,2,3],'two':[2,3,4],'three':[3,4,5]}
In [4]: bb=pd.DataFrame(aa)
In [5]: bb
Out[5]:
one three tw
import pandas as pd
data = pd.read_table('breast-cancer-wisconsin.data.txt',header=None,encoding='gb2312',sep=',')
data = data.drop(0, axis=1)
data = data[data[6] != '?']
以上这篇pandas实现将dataframe满足某一条件的值选出就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持软件开发网。
修改索引index
1、采取直接赋值的方法:
df1=pd.DataFrame(np.arange(9).reshape(3,3),index=['bj','sh','gz'],columns=['a','b','c'])
print(df1)
#修改index,直接给index重新赋值
df1.index=['beijing','shanghai','guangzhou']
print(df1)
输出结果:
2、使用rename
可以自定义map函数(x是原有的行列值)
def test_map(x):
return x+
我可以回答这个问题。您可以使用 pandas 库中的 to_csv() 方法将 DataFrame 数据写入 CSV 文件中。例如,您可以使用以下代码将 DataFrame 写入名为 data.csv 的文件中:
import pandas as pd
# 创建 DataFrame
data = pd.DataFrame({'列1': [1, 2, 3], '列2': ['a', 'b', 'c']})
# 将 DataFrame 写入 CSV 文件
data.to_csv('data.csv', index=False)
在这个例子中,index=False 表示不将 DataFrame 的索引写入 CSV 文件中。您可以根据需要调整这个参数。
(2019.8.20半解决)Solving environment: failed with initial frozen solve. Retrying with flexible solve.Co
79631