我在嘲笑一个模块……这是我的示例代码
def test_validate(self):
"""Test Base Retriever Dataframe"""
sampleQuoteClass = self.sampleQuoteClass('ThisQuote')
bRet._getAsOfData = MagicMock(return_value=sampleQuoteClass)
dataAsDataFrame = bVal.validate(metaDataName='MyNewQuote')
self.assertTrue(len(dataAsDataFrame) > 0)
Run Code Online (Sandbox Code Playgroud)
这工作正常。
问题是 - bRet._getAsOfData 也被模拟用于下一个测试,它偶然驻留在其他测试类中。
仅当所有测试作为集合的一部分一起运行时才会出现此问题。
from_csv 选择“04”作为值之一并将其转换为字符串。如何确保所有被拾取的列都是字符串?我希望避免处理单个列,因为有 114 列,并且我不想在列受到影响时进行分析。
所以,这是我的数据帧
import pandas as pd
cols = ['Name','Country','Income']
vals = [['Steve','USA',40000],['Matt','UK',40000],['John','USA',40000],['Martin','France',40000],]
x = pd.DataFrame(vals,columns=cols)
Run Code Online (Sandbox Code Playgroud)
我有另一个清单:
europe = ['UK','France']
Run Code Online (Sandbox Code Playgroud)
如果x.Country在欧洲,我想创建一个新列'Continent'